<SEC-DOCUMENT>0000950170-23-056871.txt : 20231031
<SEC-HEADER>0000950170-23-056871.hdr.sgml : 20231031
<ACCEPTANCE-DATETIME>20231031161616
ACCESSION NUMBER:		0000950170-23-056871
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		90
CONFORMED PERIOD OF REPORT:	20230930
FILED AS OF DATE:		20231031
DATE AS OF CHANGE:		20231031

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			REPLIGEN CORP
		CENTRAL INDEX KEY:			0000730272
		STANDARD INDUSTRIAL CLASSIFICATION:	BIOLOGICAL PRODUCTS (NO DIAGNOSTIC SUBSTANCES) [2836]
		IRS NUMBER:				042729386
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-14656
		FILM NUMBER:		231364727

	BUSINESS ADDRESS:	
		STREET 1:		41 SEYON STREET
		STREET 2:		BUILDING 1, SUITE 100
		CITY:			WALTHAM
		STATE:			MA
		ZIP:			02453
		BUSINESS PHONE:		7814499560

	MAIL ADDRESS:	
		STREET 1:		41 SEYON STREET
		STREET 2:		BUILDING 1, SUITE 100
		CITY:			WALTHAM
		STATE:			MA
		ZIP:			02453
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>rgen-20230930.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 :2023-10-31T10:45:30.5281+00:00 --><!-- Copyright (c) 2023 Donnelly 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/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ecd="http://xbrl.sec.gov/ecd/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:rgen="http://www.repligencorp.com/20230930" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2022-02-16" xmlns:srt="http://fasb.org/srt/2023" xmlns:utr="http://www.xbrl.org/2009/utr">
 <head>
  <title>10-Q</title>
  <meta http-equiv="Content-Type" content="text/html" />
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="display:none;"><ix:header><ix:hidden><ix:nonNumeric id="F_8bab6f70-e8fd-440c-9333-088caf6ec80f" name="dei:DocumentFiscalPeriodFocus" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67">Q3</ix:nonNumeric><ix:nonNumeric id="F_9ffa8f58-cf03-4bd6-832e-2b1e391f6bb3" name="dei:EntityCentralIndexKey" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67">0000730272</ix:nonNumeric><ix:nonNumeric id="F_3e5fce69-ed73-40a9-b7c5-3aaa3c153ed2" name="dei:CurrentFiscalYearEndDate" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67">--12-31</ix:nonNumeric><ix:nonNumeric id="F_2fc56b72-ab4c-4d4f-847c-83c1baf70682" name="dei:AmendmentFlag" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" format="ixt:fixed-false">false</ix:nonNumeric><ix:nonFraction id="F_ff81e153-a650-4ec0-a097-dbe52894c55f" name="us-gaap:CommitmentsAndContingencies" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_88c8f510-91c2-49ad-a22e-87fe460b1aa6" name="us-gaap:CommitmentsAndContingencies" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" unitRef="U_USD" xsi:nil="true"></ix:nonFraction></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="rgen-20230930.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="C_85784f19-a202-4d13-99bd-01a270cc879f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a588eb85-a8e0-422a-9c8a-0205b7e8ee16"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c4545892-7ce6-4242-a05b-e23c3cc4a419"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_aba719ab-7b87-445e-970a-55bd323b25b9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3012615e-9bbf-4cb7-85d5-f097eb6fec6c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_33916c39-0849-428b-9d27-2c65aeb0bff1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2233bf7e-e68c-491c-9240-9c2c6f972892"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_e2162459-d2f2-4f1d-82c5-8e7e4f62d09a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:PuroliteMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c75dba94-3d35-43ec-9ed5-9da06bf49a5b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b45b33b5-979b-4ecb-a5f6-02ae2ceaace4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_5bf12700-9d89-42fe-a05e-9eab6a959a44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8cf25956-fc00-4b82-8e1d-4eea0e5db938"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_53c23e08-45bc-4752-b281-a8c43e64852b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3724e612-61bd-430a-b202-7aa0f948df3b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">rgen:NonExecutiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_eb79228f-93fc-480b-83ba-2bc57423f132"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rgen:StockOptionAndIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3ee66a6f-df77-4080-8b9b-0df16d166621"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-17</xbrli:startDate><xbrli:endDate>2023-04-17</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_d81a4437-bb80-4be4-ba91-a5e7069c6c46"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8225936e-5d96-4ffa-b252-e28305f513ba"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-17</xbrli:startDate><xbrli:endDate>2023-04-17</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9309f5b7-5f6f-4683-8665-f36d7eec347c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_324df715-cbf3-4103-aadb-9094df374fac"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4aa55425-0a01-4df8-8aa3-6125e75c9e6f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">rgen:CashAndMoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_abbc99bb-674c-4cde-9869-3bc5c9875a77"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:PuroliteMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8c9b452d-424b-4461-bf60-db4ea582123f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e042f503-5f54-449d-8702-4997946185d3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ead61b81-a0b1-4eaa-89e8-0908dd53afd5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a6e126b9-84d4-4ed8-865f-4a752e5c2725"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1291ff2c-3a6f-4b4b-a65a-cbd1f72f77d8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ExecutiveOfficerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_cffd0f39-00b9-4846-8a44-558f550e0943"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9f8a6274-46f2-432d-b9a1-33f4400d7ebd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4860c508-dc06-42df-b92f-3a630acf6182"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_efc02b50-9525-4ec9-b3eb-ef2a3b59eac5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-07-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_11826311-475d-42db-8c63-2231469adce3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_25751d48-53ce-4703-a6df-367c93f42be7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0364194f-9ad2-4f36-8666-7a7194eed471"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:CustomerNumberOneMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_323fbe34-7f7b-4bb3-b3cb-66c509c7a295"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_51d8287b-dcef-48fc-883f-8e1c478a2b86"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_d7d37b09-d270-4cbb-a9da-f9e9f636fbc8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cbedbaad-0c9b-428f-afd3-94fc7c3d0e5e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a0f32af8-bf41-4524-8432-35b4fe4c8f39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_63b32e62-4479-4be9-a171-379efbd3634d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_70d2ee71-05f1-4dbf-b306-8baa2a30b302"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7bd58d0f-f1e5-46cd-bc3a-4c87d2c45877"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5237d958-4fb9-4dd4-8035-bfd3df21d36c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_24b3d094-f833-451c-b00d-cc5909ca2b28"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_eabc34eb-d459-4a2b-bab3-011dd910bea3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c7266c47-3f9c-4cd0-b4a6-6df11f50fe30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_823f0961-1e36-4654-ac48-d7ad7ec1e6cb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_5f41dc03-78a6-4cef-9956-f19adad0fb47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_921bbbf7-e99d-47d0-a160-678bbbdb19f8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b09a2afc-265f-4a83-9a3c-a2923ee317ba"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cfd97fee-6741-43dc-bf9b-8a0f0b3ff041"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputPriceVolatilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1e784908-4b51-4615-ac72-38d8f501004d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a47ca049-a970-400f-b17f-23a2967262f3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_12e9a451-11af-470c-a8dd-46dfa3df6a69"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_85ad93a0-d38a-4255-8513-bef07e087737"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6d9b48a4-c59f-4247-89dc-85833b05f4df"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0a020387-8e25-4e88-a3ee-23a02a143298"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_d7584a16-3fab-46d8-9bed-bfd144d60bcd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b47fc7c0-aa97-483f-954c-6453caaa6da0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputEarnoutDiscountRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b4f364db-132b-40d2-8982-d6633ec4c788"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fdc9d1ae-9cae-4a17-92ec-6a882b3569bd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">rgen:NonExecutiveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_74b69daa-9fb8-4fbb-9dbf-2e1bb9c47c30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-07-19</xbrli:startDate><xbrli:endDate>2019-07-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cd91b63d-890b-47e9-9ad5-3ac68b67252f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-03-04</xbrli:startDate><xbrli:endDate>2022-03-04</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1b90f9fc-d292-4406-813d-792497ad018a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6302ca2f-2211-4af6-82fb-0147adfc8d7b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_05afc143-e2ca-4d16-9905-a872dc0bfdbb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d057084f-8601-4496-91e9-7fbcf94b4456"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c164b6cb-58d7-4dd5-b3db-7e5670527c2a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ffb0abda-eca1-46cd-b1b8-8ae39258300c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_639cc313-9a7c-4dc1-b645-6a131f543337"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c79687e8-b4de-404a-84b9-20cbdcf033ac"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4e0b36ec-43f6-4229-8ad1-e5ec31647396"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_13680e01-e354-48b1-b0e0-49543c6d0949"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_f12f96af-4ef6-4036-8af1-c9430b5fc52c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_2d3bdc7d-a42e-4d3e-a455-f05b56dd8ad0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputEarnoutDiscountRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_2a81b44c-85b5-439f-8855-cc98c05915f6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fc69ac89-a7ff-422d-9cf6-d80cd05875e6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">rgen:InflationReductionActOfTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-08-16</xbrli:startDate><xbrli:endDate>2022-08-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cda1fc68-dcf5-4d3d-b5f4-901572acd667"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_83ad0496-4c4b-4639-8ea5-3812418b1344"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a7514252-0b1a-4c3c-a70e-61af677468b2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_6d9084c7-b2b0-46e7-a373-50c12bf22ac3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_214729b5-2a82-4056-8ae3-23a22617eab1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b9fcda26-79f9-4cec-809c-4a8538eb5844"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputProbabilityOfSuccessMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_8f79b075-c9aa-49d4-bf17-8f21bea61eca"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b83b7f79-eb2d-4463-8d73-431f7ee309b4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-07-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9131de4c-ce74-47ff-b625-8f5ef9568d7c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">rgen:CashAndCashEquivalentsAndMoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_78bc408c-ba59-4d1a-a9be-933157c80135"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4eda6e14-d766-43da-98a6-1b0af1d01966"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_66ee78d4-1501-41f8-8bad-081591c64446"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_809c4263-b3f1-466a-91ad-d90a49cd1f3b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4dc77df2-3dd3-4d8f-a97f-7de8d7264828"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-10-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_300d7e4f-ccf2-4d20-b499-03865151e0ef"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c8e8dba7-df36-4adf-8206-c18e4a8bd3d2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_145e26ad-9866-4d83-985a-d837ec5e86ae"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:MetenovaAbMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-10-02</xbrli:startDate><xbrli:endDate>2023-10-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cd0fa4fd-2b07-4bbc-9802-a9683374cc3f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_5f45ba16-985f-4eae-a153-2cd561ae1db1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_efe12117-250c-4685-8a47-747fda96c561"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_bad47599-6652-49f6-bc88-bd914056710b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_5520736f-0037-44d4-9b4c-7378ee9e38c9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_f23a5451-71e9-4709-892a-2715747cf854"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_54886403-e19a-4dfc-99c5-a193e57198e7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_dccc7332-54e7-463e-ad34-788072af7c2c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_edc5bd63-1c87-45d8-b2fd-5640d6402707"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-17</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_89c4168e-326f-46d9-971e-1071c9bfe989"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_db66190a-5326-4a07-b1a9-31b2a75509cc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">rgen:TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:PuroliteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-07-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_2668adfd-7544-470d-92f5-c9a9606b8fca"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4990472e-defa-4176-a295-070ee8724fa0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_2c2f62ac-fa5f-4eb3-bf11-7ae904a232cd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e7591784-590d-4139-89d4-0d5eeed2eceb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_bf2625d5-d558-4316-975c-562ba4835ff4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ddede146-e39d-42e2-811e-3d451abddc6f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:UnvestedOptionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c7dac913-7e20-4be0-921c-3b4999696498"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e4765433-97ed-401e-8926-9e289252220b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">rgen:CashAndMoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1e720d5e-8b9e-4b94-b885-ee375061b75f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0b7e0bad-3f4a-41c9-a080-b0efc8569cec"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0c142833-a43f-447e-b3a8-8a0d080dec86"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1cdbcd11-292d-4c07-b976-f886f65abbcc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_51d37a73-1d8b-4c15-9836-7661a6ef0182"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">rgen:TrademarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3b07fa83-c650-4d0d-b745-c9e66a7af009"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:OwnershipAxis">rgen:SpectrumIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_052089cf-3ef1-473e-a7df-afce31271ab0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ab2e2224-f373-42d1-bd2d-9ccfb549c73e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_827ccb42-4138-495c-a08b-41aaf99d90d9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3d5ddb9e-aa00-4182-b58c-09394221355b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_41ef690f-1d2f-4809-b6d9-da38ed8a3f7b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ExecutiveOfficerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_97c83f2b-2677-4fac-993e-34520451f429"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_26186120-7e0f-4c33-a981-c4b12f5ae368"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_fd6d9423-3d7b-419b-937f-32e58d788d1d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4d2c8145-0800-447b-8bcb-bcadb2866c1a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">rgen:TrademarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3039311a-848a-433b-b94b-bb73d3fb5bb8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputEarnoutDiscountRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_dfef19f0-4a11-43ab-84a9-91b3b09337ef"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3e2f918e-895b-479a-b917-22184c12541d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_03f1dedf-5b09-4e09-9c8e-1f6615c13430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_37ad1c18-3905-4747-8acb-2d3e3711075a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_3daf5c5c-4edf-45fb-8e28-01fca25247f6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e1f2d150-80c4-461e-b196-6c602f098185"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6099b1e0-951d-4096-8cd0-45f1352a1677"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b74e52bb-2626-4d31-ae8a-97dd6358650f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9fae5b8e-0af7-4511-980c-90356dd429ea"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2c385808-0a00-4606-b941-2ce07f0c914d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_707154c4-f9cf-45d0-9ea3-cd1f8b0fc7ac"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_636b9526-cb85-4246-a319-73b5d8251b39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_703f7c33-5d64-43ae-99f7-80349032df8f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_3d1eada0-7331-48c5-9e0d-9c8a9f571fce"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ba888aed-dc97-4aeb-80fe-2cd42030c882"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_444af4d9-1a4e-406f-8ea2-ce4eecdaaab3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_18ab726c-4cde-4a85-a8ea-d39f0739d066"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityExitAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_19ac52bd-03cc-41f7-a604-85d57c92d47c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a7a55267-da21-4945-96dd-90a1ead6dd5d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputProbabilityOfSuccessMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b2e28058-999d-469a-8802-ed7b964035cd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9ede9dc7-76ee-4a60-8d3d-b7831dd2f586"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c04f5c43-2713-43eb-a0b0-f639e587c213"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7c8c0df8-aa3f-453b-8083-8b757da047cb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0a325822-1e75-48f0-bfe6-37931198fa2a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_adc269c9-6b99-4085-86f1-8d8ded904dec"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityExitAndOtherExitCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_903609b8-dafb-41ed-89ce-cd3f8437e759"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0c9331ac-5a9c-43ca-87ee-2e9db469f8b0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_5dbe09cf-f7d1-4d59-a8c0-ff73f2f6afc8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4205a452-63ed-4b15-bb8d-d8a58e8528c5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_64256d68-98ed-4170-b03f-39dfff90cc5f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputRevenueVolumeDiscountRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_f859f923-a1d6-484b-a120-fbb36fa356cd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_46cab3c6-b18a-4413-a555-92293dfea9bd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_70523811-ec9c-4099-b492-db439653b382"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1f018b06-14dd-482c-b295-952d4d3f48b1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_44d43283-ca3d-455e-9caa-433c35acd70d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0f10afd9-4d70-446a-aecb-5ca89dd3f2b6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_16bec3ca-1b09-48b5-8fc5-64ec7fa403c4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9a23c019-0476-42a1-bebb-8fef85487d30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_fdeb0a7f-0bac-440a-8977-1826c35bb0b0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7138c14d-581b-4fe8-a592-dfc0496070f4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-05-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3d1ad89d-d8d1-4cf9-ab80-18bb03f83d45"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rgen:StockOptionAndIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fd1105c0-8b60-471b-af3a-ca9ecebc9472"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3536ed09-09c6-4e4b-8140-cc2ccd353292"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d9b1dcb1-9927-4eb9-b054-87234e8e2ba3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_55c86da6-b271-448c-a888-ad8642d1b0b2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0ed23a08-558e-4162-aad8-2f48177e907a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c1477456-7b6e-4f58-88ac-6137ee30faad"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_dcdf82fc-193a-4298-9486-cc4d6a00907a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_56de56c9-17e8-4a0a-9d37-a1c65d482e15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_00add57c-f99c-46ef-8537-6bd7a775258b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_27bc5ff3-df20-4dd1-939c-d3e0c6c7b5c0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_698ddc08-a965-415e-a40a-374f09d419d8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b8ef5c7e-f8c6-4f5d-a4c9-5f1b67b8a6b3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_755445a6-cd7b-433e-8ed9-88c0064de373"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c7cc198a-634c-4a85-9821-8f902377f89e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2a837317-8e58-45b6-b3da-840fb7cb9c0a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4d401095-4107-467d-9745-b9fa041d95fe"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0008747b-7daf-4d3f-b5d3-4dbf779713e9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_16fe91ab-7cc9-4f23-ad3b-1c6601fd6a2e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a4103be0-35ec-41cb-9972-d87662b0d919"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_26cc2f4e-5b40-4e20-aa2d-001c3d824799"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b74f3545-bb1d-46da-b557-40afee4df3f5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_09aff2d0-95ff-40b1-a2d7-48262305cd62"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_bebb9618-8aa6-4570-a4f5-0cf5cee32e19"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_cd4e55d8-a771-4a3f-a1d7-8ea1523e5ffa"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2d8d1da4-1b3c-43fd-a1a0-d88015ad309c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0e18670b-fdd8-4e65-a456-fbee7920c0b9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_13def02c-f3c4-4658-a081-e45beb91156b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_42ec1346-b9a4-4918-9f08-2f61dd8e7f7f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><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_pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="U_shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U_Segment"><xbrli:measure>rgen:Segment</xbrli:measure></xbrli:unit><xbrli:unit id="U_Days"><xbrli:measure>rgen:Days</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_756ae9e7-5931-4a93-9570-bc1347b8cf3e" fromRefs="F_abe5078a-881f-4ca4-a518-a807a1b99f5d F_6892dd40-47a6-42c4-a9da-672b7719b188 F_f4b9f1f4-6463-42af-8f85-8310738a3324 F_21f2f23d-20fc-42b1-a0d5-3b61740237a0 F_414f0b7d-95e6-4bab-ab09-c9ccc654cd04 F_8b72cdc6-4dca-4073-8b42-47da22b1eac5 F_972e11a2-fadc-437a-a974-6a13b46b24ad"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_7178268a-013b-40cf-b4cd-19d1043e506d" fromRefs="F_ee662a64-ac6c-4919-bbb2-8056eabf38e2 F_aaa0d4bc-a19b-4a85-b6c9-d369b39dcc1c F_4e9c865f-4ce4-44b0-bdb7-06e678ace694 F_a46dc2a8-9f36-49cc-827c-8174fcf1ebd0"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_f64d3bfc-587c-4f24-8797-c9208aa8da44" fromRefs="F_f53a333c-a682-4afd-b31d-d702c78d1e53 F_bb66cba6-c118-4e68-a054-0a99c491f048"></ix:relationship></ix:resources></ix:header></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="border-top:0.75pt solid #000000;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:4pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="border-top:1pt solid;padding-top:1pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:4pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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:18pt;font-family:Times New Roman;min-width:fit-content;">UNITED STATES</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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:18pt;font-family:Times New Roman;min-width:fit-content;">SECURITIES AND EXCHANGE COMMISSION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Washington, D.C. 20549</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;">FORM </span><span style="font-size:18pt;font-family:Times New Roman;"><ix:nonNumeric id="F_994e053e-052a-4b98-8b0b-0d053ca67069" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:DocumentType"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;">10-Q</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;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:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:5%;"></td>
    <td style="width:95%;"></td>
   </tr>
   <tr style="height:12pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:12pt;font-family:'Wingdings',serif;"><ix:nonNumeric id="F_4f79de9d-185a-4c57-83d5-61c696b0f8b8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:DocumentQuarterlyReport" format="ixt:fixed-true"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:12pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf078;</span></ix:nonNumeric></span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;"><p style="text-indent:0;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-size:12pt;font-family:Times New Roman;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="text-indent:0;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">For the quarterly period ended</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_44995914-bfad-4562-97fb-2f656cc851b1" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_26ea0c8e-01d0-4161-bb8b-70953a40d634" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:DocumentFiscalYearFocus"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></ix:nonNumeric></span></ix:nonNumeric></span><span style="font-size:10pt;font-family:Times New Roman;"></span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:3pt;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;min-width:fit-content;">OR</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:5%;"></td>
    <td style="width:95%;"></td>
   </tr>
   <tr style="height:12pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:12pt;font-family:'Wingdings',serif;"><ix:nonNumeric id="F_7ed2e4aa-2c02-456f-abc8-eba58302eb13" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:DocumentTransitionReport" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:12pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span></ix:nonNumeric></span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;"><p style="text-indent:0;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-size:12pt;font-family:Times New Roman;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="text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">For the transition period from ___________ to___________</span></p>
  <p style="text-indent:0;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;min-width:fit-content;">Commission File Number </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_ea70b794-208f-44ba-ae08-e473a5f662ce" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityFileNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">000-14656</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:24pt;font-family:Times New Roman;"><ix:nonNumeric id="F_46a4aff5-c82f-446a-8dfc-605c042f9479" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityRegistrantName"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:24pt;font-family:Times New Roman;min-width:fit-content;">REPLIGEN CORP</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:24pt;font-family:Times New Roman;min-width:fit-content;">ORATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:24pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">(Exact Name of Registrant as Specified in its Charter)</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="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-weight:normal;font-size:3pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:50%;"></td>
    <td style="width:50%;"></td>
   </tr>
   <tr>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_e4e79ce8-1e8a-407a-b8ad-cb1b196fc736" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Delaware</span></ix:nonNumeric></span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1fa0147d-d91d-4864-b00f-2cf8c9cbe8e0" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityTaxIdentificationNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">04-2729386</span></ix:nonNumeric></span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(State or Other Jurisdiction of</span></p><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Incorporation or Organization)</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(I.R.S. Employer</span></p><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Identification No.)</span></p></td>
   </tr>
   <tr>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_272eada0-6a7b-4c77-99cc-59cd8b66e4a7" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityAddressAddressLine1"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">41 Seyon Street, Bldg. 1, Suite 100</span></ix:nonNumeric></span></p><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d0323ef5-c832-41ce-ad26-9f95d108701a" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityAddressCityOrTown"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Waltham</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_15f9d17a-00f8-417b-bb4a-eb3450fc8f17" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityAddressStateOrProvince"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">MA</span></ix:nonNumeric></span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6056aa90-00de-48e1-9a67-43a752cd299a" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityAddressPostalZipCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">02453</span></ix:nonNumeric></span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Address of Principal Executive Offices)</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Zip Code)</span></p></td>
   </tr>
  </table>
  <p style="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-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_cd169a15-1ec8-4a4b-bf58-89cd492b7c90" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:CityAreaCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">781</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6db3d098-8143-4cf7-95ad-19831a94c3d3" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:LocalPhoneNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">250-0111</span></ix:nonNumeric></span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Registrant&#x2019;s Telephone Number, Including Area Code</span></p>
  <p style="margin-left:40%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Securities registered pursuant to Section 12(b) of the Act:</span></p>
  <p style="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-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:38.22%;"></td>
    <td style="width:21.34%;"></td>
    <td style="width:40.44%;"></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Title of each class</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Trading Symbol(s)</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Name of each exchange on which registered</span></p></td>
   </tr>
   <tr>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;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_1a4e35c7-4d35-47e6-8005-aacd2e2a1bc0" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:Security12bTitle"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Common Stock</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, par value $0.01 per share</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fd3063ad-f27f-49cd-8f8d-77d0870e94e8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:TradingSymbol"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">RGEN</span></ix:nonNumeric></span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d38aefea-e572-4b69-b90a-51bc3d7032dc" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Nasdaq Global Select Market</span></ix:nonNumeric></span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2c1be2d6-2ed9-4fef-bd26-a51a7b779e1f" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityCurrentReportingStatus"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf078;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">    No  </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d88b1a40-1259-4225-82be-2607d18afa7c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityInteractiveDataCurrent"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf078;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">    No  </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of &#x201c;large accelerated filer,&#x201d; &#x201c;accelerated filer,&#x201d; &#x201c;smaller reporting company&#x201d; and &#x201c;emerging growth company&#x201d; in Rule 12b-2 of the Exchange Act.:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:21.2%;"></td>
    <td style="width:51.52%;"></td>
    <td style="width:24.24%;"></td>
    <td style="width:3.04%;"></td>
   </tr>
   <tr>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;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_63cd11e9-69c5-40c4-a926-fa36c346f0d8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Large accelerated filer</span></ix:nonNumeric></span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf078;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accelerated filer</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-accelerated filer</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Smaller reporting company</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:'Wingdings',serif;"><ix:nonNumeric id="F_4a4b1c80-7931-4dd2-ad8a-c5cbe58b60b4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntitySmallBusiness" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span></ix:nonNumeric></span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Emerging growth company</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:'Wingdings',serif;"><ix:nonNumeric id="F_148315fb-910a-44ca-84e3-2aee3e5614a4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityEmergingGrowthCompany" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span></ix:nonNumeric></span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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.):    Yes  </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf0a8;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">    No  </span><span style="font-size:10pt;font-family:'Wingdings',serif;"><ix:nonNumeric id="F_38ab0f8a-c988-4d55-bdae-3458980642d8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="dei:EntityShellCompany" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:'Wingdings',serif;min-width:fit-content;">&#xf078;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The number of shares outstanding of the registrant&#x2019;s common stock on October 27, 2023 was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5f27e57c-95f9-453e-aa43-9e98a8de128f" contextRef="C_4dc77df2-3dd3-4d8f-a97f-7de8d7264828" name="dei:EntityCommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,832,013</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="border-top:0.75pt solid #000000;text-indent:0;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:normal;font-size:4pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="border-top:1pt solid;padding-top:1pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:4pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Table of Contents</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:8%;"></td>
    <td style="width:84.14%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.86%;"></td>
   </tr>
   <tr style="height:8pt;">
    <td style="text-indent:12pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:-12pt;padding-left:12pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="text-indent:12pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:-12pt;padding-left:12pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">PAGE</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART I -</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">FINANCIAL INFORMATION</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 1.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial Statements (interim periods unaudited)</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="text-indent:36pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:24pt;text-indent:-12pt;padding-left:12pt;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-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Condensed Consolidated Balance Sheets as of September 30, 2023 and December 31, 2022</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="text-indent:36pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:24pt;text-indent:-12pt;padding-left:12pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_statements_of_compr_inc"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Condensed Consolidated Statements of Comprehensive Income for the Three and Nine Months Ended September 30, 2023 and 2022</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="text-indent:36pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:24pt;text-indent:-12pt;padding-left:12pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#statements_of_stockholders_equity"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Condensed Consolidated Statements of Stockholders&#x2019; Equity for the Three and Nine Months Ended September 30, 2023 and 2022</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="text-indent:36pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:24pt;text-indent:-12pt;padding-left:12pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#statements_of_cash_flows"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Condensed Consolidated Statements of Cash Flows for the Nine Months Ended September 30, 2023 and 2022</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="text-indent:36pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:24pt;text-indent:-12pt;padding-left:12pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#notes_to_financial_statements"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Notes to Unaudited Condensed Consolidated Financial Statements</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 2.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item2_mda"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">23</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 3.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item3_quantitative_and_qualitative"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Quantitative and Qualitative Disclosures About Market Risk</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 4.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item4_controls_procedures"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Controls and Procedures</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART II -</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">OTHER INFORMATION</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 1.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item1_legal_proceedings"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Legal Proceedings</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 1A.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item1a_risk_factors"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Risk Factors</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 2.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_2_unregistered_sales_of_equity_se"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unregistered Sales of Equity Securities and Use of Proceeds</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 3.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item3_defaults"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Defaults Upon Senior Securities</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 4.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item4_mine_safety_disclosures"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Mine Safety Disclosures</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 5.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item5_other_information"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other Information</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 6.</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item6_exhibits"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibits</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">37</span></p></td>
   </tr>
   <tr style="height:5.75pt;">
    <td colspan="2" style="text-indent:12pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:-12pt;padding-left:12pt;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="text-indent:12pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:-12pt;padding-left:12pt;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td colspan="2" style="text-indent:12pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:-12pt;padding-left:12pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#signatures"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Signatures</span></a></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">38</span></p></td>
   </tr>
  </table>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="financial_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART I &#x2013; FINANCIAL INF</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ORMATION</span></p>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;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;min-width:fit-content;">ITEM 1. Financia</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">l Statements</span></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">REPLIGEN CORPORATION</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="balance_sheets"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONDENSED CONSOLIDATED B</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">AL</span><span id="consolidated_balance_sheets"></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ANCE SHEETS</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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-style:italic;min-width:fit-content;">(Unaudited, amounts in thousands, except share data)</span></p>
  <p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:67.08%;"></td>
    <td style="width:1.622%;"></td>
    <td style="width:1%;"></td>
    <td style="width:12.837%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.622%;"></td>
    <td style="width:1%;"></td>
    <td style="width:12.837%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">ASSETS</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Current assets:</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8b795dcd-6ae0-4cf5-8e20-5ece258922d5" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">630,779</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_98c7ea49-aa14-478f-85bd-c6c55395f528" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">523,458</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Marketable securities held to maturity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f25026a4-f2d8-453e-b009-7ba2eb5910fb" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:HeldToMaturitySecuritiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7e99d0c4-9d78-4a0f-8433-017c7266cbcc" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:HeldToMaturitySecuritiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,299</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable, net of reserves of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_622592fd-324f-43b4-a3d9-ace04580e240" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,803</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a5351f0d-d26c-4ade-a2a0-3a370cf83150" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,365</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;at<br />&#160;&#160;&#160;September 30, 2023 and December 31, 2022, respectively</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_63682695-974d-4018-899b-886b965f7e6a" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">106,158</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b01f20a2-96aa-41f5-8b86-8a53a539fd2a" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">116,247</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Inventories, net</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bb1f536a-20b1-4e1b-9f05-f2d2086e8ebd" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">211,372</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_acafa938-8e63-4308-b022-98166e2aa0d9" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">238,277</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Prepaid expenses and other current assets</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_57922d9b-61e6-4f66-ab4c-6e2246631402" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,147</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0442c5b5-2696-46a7-98bc-255263ebaf8b" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,837</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total current assets</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_be52a979-a16c-45b4-8504-77d168c4042e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">978,456</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_337afb76-3eec-4de8-8126-576b550bd16a" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">998,118</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Noncurrent assets:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment, net</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e6f4bd9f-6090-4248-ac2d-683ef118b11a" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">201,618</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_12ecedf4-960f-4170-a6ee-b828c4e19f72" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">190,673</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d6d2cd8f-b6e8-4a0e-8fe6-48b35dab71ec" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,729</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_edcc4d90-7051-4d50-b108-19a807d10f8e" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">353,676</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Goodwill</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4f6cb713-3b07-45b6-9bba-481d66849d9b" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">869,252</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_181c0fb4-df98-4db2-9a26-ed932140f1c4" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">855,513</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Deferred tax assets</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c86f542b-3a88-4e21-9501-e4a987720715" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:DeferredIncomeTaxAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,546</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2badc98f-4811-4ee3-89c1-08de6ace1d3e" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:DeferredIncomeTaxAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">840</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Operating lease right of use assets</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e92223e7-0cf5-4039-978a-1151f42bdecb" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">118,084</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bfe9be6f-f961-4c48-bd17-b6018da82508" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">125,023</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Other noncurrent assets</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e30cabb2-9305-427a-a652-6446a7ccb043" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,444</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_66ddd15b-a9e3-426e-b5ec-4aceea6657ea" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">815</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total noncurrent assets</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_22d18809-ea5a-4bf3-a9ff-17ce4701d8d3" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,535,673</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_df263014-3d79-48d2-afa6-93ccb9fabf9c" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,526,540</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total assets</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7b08ccaa-4eb7-45d9-aa04-51372ed4573a" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,514,129</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_64adb6c8-59f4-4082-8480-366fb3f67985" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,524,658</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">LIABILITIES AND STOCKHOLDERS' EQUITY</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Current liabilities:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Accounts payable</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fe40e137-6d64-4951-9fff-e77a3dfb3243" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,961</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_810806f8-403a-4a08-87f7-ffa67228c207" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,554</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_32f60ecd-4711-45a3-b816-e46f52c5fb67" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,315</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_77b3e8f7-a98e-45da-8605-721557581e63" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,957</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Current contingent consideration</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_96899831-49cd-4234-be01-b717e1f0297c" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,589</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9e6e6f03-229b-4be7-86dd-d14637a7b91f" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,950</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4c0e7e81-5145-4ff7-8b18-1cb9da1e9c88" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">42,543</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c331fb58-85a4-4b58-9cae-e7a97f2d6df1" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">71,120</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Convertible Senior Notes, net</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1cc6731b-ada3-4383-b298-21c607d7082b" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ConvertibleNotesPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">285,956</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_10cbb3b7-2db7-4e80-a2f5-b9d52c7d7cff" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ConvertibleNotesPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">284,615</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total current liabilities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_afa64e71-e187-4bc7-a62f-68db8ede3aa9" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">363,364</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_82b4cf0d-8fe9-4547-a2f2-e0e62f88df81" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">404,196</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Noncurrent liabilities:</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Deferred tax liabilities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6108a7fe-739d-4f26-bbc7-e49df32f16b6" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,036</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_77c8ac21-5a21-41ff-8522-8a970dc1f24e" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,000</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Noncurrent operating lease liability</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6a714f39-0345-4ad0-895c-b915db76faa6" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">130,615</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_96d89e0c-af4e-4c7f-802e-2848bc5f1438" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">131,389</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Noncurrent contingent consideration</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f923a7f6-12f1-41f8-85f1-5ce65cdb5021" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,759</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1bdc8837-6073-47c8-bbff-8ce10484fea8" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">51,559</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Other noncurrent liabilities</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_18d34314-b5f5-45e3-b8b0-3dea5d17d523" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,798</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d7ac22b0-4531-4be8-909b-4d6ca792681d" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,814</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total noncurrent liabilities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a3cf49ba-eff5-4c3e-822e-6795bdb85a36" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:LiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">162,208</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a9a14027-7efd-4151-baa8-af3519dd8d52" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:LiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">209,762</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total liabilities</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c99152d7-c14c-449c-830a-7b7bc6e2dead" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">525,572</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_00094950-8ebe-40e5-83c4-046480f03472" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">613,958</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_ff81e153-a650-4ec0-a097-dbe52894c55f;"><span style="-sec-ix-hidden:F_88c8f510-91c2-49ad-a22e-87fe460b1aa6;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Commitments and contingencies (Note 10)</span></span></span></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Stockholders' equity:</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Preferred stock, $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_13981049-9519-48f1-9214-478a45b3d297" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PreferredStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal"><ix:nonFraction id="F_8f486d71-fd4a-4ee5-9d19-cf5542f72ebb" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PreferredStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;par value, </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4947e399-7f39-4e73-bcd8-cd50845eb26e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_bea3139f-0493-4c1e-bced-1d9428088327" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" 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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;shares authorized, </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d349f50f-d83d-4e28-82f3-ce057ba39b33" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_da4dde7d-ce56-47ac-a256-fa2eb2643ee8" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PreferredStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_c29e878c-696d-46f6-9ca8-6f7e7c89a604" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_812e7be4-0f13-45f9-a507-dcbad54e6ba5" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PreferredStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;shares<br />&#160;&#160;&#160;issued or outstanding</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_23cb9dd7-dc32-4d43-879f-2da18d9fd617" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PreferredStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dacff335-d5ee-4f33-bef0-ad14b5e6f616" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PreferredStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Common stock, $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6101d072-ee84-402f-aba0-38899ca9fb87" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal"><ix:nonFraction id="F_216b191e-f841-4f2d-bf0b-ccfb16d8500c" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;par value; </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_122339a3-7746-4243-b4c8-20b831e28da6" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_3c9f2630-9daf-434a-bd72-430aeb4f2bd1" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">80,000,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;shares authorized; </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dda0974c-87fe-4a20-83c7-3aa9df04ece8" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_9e0d4c01-0f1a-4b4a-aae7-892f87cea64d" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,774,706</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><br />&#160;&#160;&#160;shares at September 30, 2023 and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c32485fb-3547-466a-a696-8ef965fd6230" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_a479c15e-fa86-48ab-9e77-c28ccfae0f72" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,557,698</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;shares at December 31, 2022<br />&#160;&#160;&#160;issued and outstanding</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_acb36b72-0e58-42a5-b51e-4813467432b9" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">558</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3256d9d6-ff90-4d1f-bcc3-76f24338814d" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">556</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Additional paid-in capital</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0a23d470-e22a-45c1-87ea-501c80e99761" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AdditionalPaidInCapitalCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,567,233</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8e9f2197-f920-491b-8c3d-e68e97e0b566" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AdditionalPaidInCapitalCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,547,266</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Accumulated other comprehensive loss</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5e093c6c-5127-4fe9-8369-759f3244c2a6" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">43,571</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e08b86ea-4510-4cdf-ab2c-623645b379b5" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">34,394</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Accumulated earnings</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d0120a6d-6ca9-414b-a917-5ffbdc221aef" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">464,337</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f8e10420-0738-4f19-827b-a46561bf9d9e" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">397,272</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total stockholders&#x2019; equity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a9a9850c-ade8-49ab-9311-d4823d8fcd48" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,988,557</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ee556ffb-32fb-4f7f-bad2-2355a8830ce8" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,910,700</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total liabilities and stockholders&#x2019; equity</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_248596e8-670b-4ece-9982-1071111aee76" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,514,129</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_af9ad255-b8d4-4113-b05d-af588209ac7c" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,524,658</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these condensed consolidated financial statements.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">REPLIGEN CORPORATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_of_compr_inc"><span style="text-transform:uppercase;color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Condensed CONSOLIDATED STATEMENT</span><span style="text-transform:uppercase;color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">S O</span><span id="statements_of_comp_income"></span><span style="text-transform:uppercase;color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F COMPREHENSIVE INCOME</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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-style:italic;min-width:fit-content;">(Unaudited, amounts in thousands, except per share data)</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:60.768%;"></td>
    <td style="width:1.44%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.399%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.44%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.399%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.44%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.279%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.44%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.399%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Products</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ee6b7b5d-b0be-4d74-a14d-1a1869497339" contextRef="C_bf2625d5-d558-4316-975c-562ba4835ff4" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">141,156</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c726f52a-d636-4a6f-a9f7-1c532e96adf5" contextRef="C_b45b33b5-979b-4ecb-a5f6-02ae2ceaace4" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,708</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fd9d12ef-8638-48d4-8873-a0b7fe46adc2" contextRef="C_7c8c0df8-aa3f-453b-8083-8b757da047cb" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">482,910</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_65de6e03-f0ae-43b9-ba97-ef888cb83cd8" contextRef="C_a6e126b9-84d4-4ed8-865f-4a752e5c2725" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">614,668</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Royalty and other revenue</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1d3d97f8-c89f-4950-a2a9-1af91102bb43" contextRef="C_c79687e8-b4de-404a-84b9-20cbdcf033ac" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">36</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_20f9615e-4f00-494e-b0af-ad130f94a868" contextRef="C_b2e28058-999d-469a-8802-ed7b964035cd" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">33</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7c2fe62d-5627-4dac-a0e3-c2f187d06962" contextRef="C_c1477456-7b6e-4f58-88ac-6137ee30faad" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">111</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0fbc0d65-0e3f-4883-a892-59979d221827" contextRef="C_12e9a451-11af-470c-a8dd-46dfa3df6a69" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">106</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a8fa7c46-f369-47a1-b8db-91e9edea10ec" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">141,192</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e611f214-aa02-4358-847e-2be1a8a58f94" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,741</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_88c5aace-b3ab-4030-8a70-9b1320ff0e5f" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">483,021</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_13977248-e5e4-48f3-9f17-f23465847033" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">614,774</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Costs and operating expenses:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4ac6a937-abb1-4ce9-aeaa-807eb986f8c4" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">104,634</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3864e534-0f1e-406b-95d0-bde636ca06cf" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">86,514</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9f47c968-1bfc-4b21-917e-b824cebf207c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">265,786</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9ead9c4b-97ac-4811-98fe-6af00500b7c5" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">255,130</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c7b5d1b7-7042-4f87-a8f6-1a1fb4f4e295" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:ResearchAndDevelopmentExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,577</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3fac5f4e-5ce1-41f7-8309-da38c7f21149" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:ResearchAndDevelopmentExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,228</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1e66cfe8-51cd-45b5-8bff-c545ec906132" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ResearchAndDevelopmentExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">32,437</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3fc88618-a73b-4b66-99fe-825743c94373" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ResearchAndDevelopmentExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">32,823</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_40ef5bd5-9ee4-4434-ac95-db0035397a56" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">55,465</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fad02bb5-09bd-482c-89ae-b2f4e0caddfc" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">53,643</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a1d2b533-c44a-4425-befa-a0b771584e7f" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">160,601</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_51c08442-4d16-4598-9ab2-da2d9589f56c" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">162,592</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_294a1547-17ea-496d-b1b3-4aca1afffb0c" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">34,292</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b9840732-9710-4e9d-92f9-43d6368281e4" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,309</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6d2d399e-879f-40b4-9afb-79f52e07580a" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">31,266</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2325d863-d0d8-4f78-b2dc-356eed60d50d" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,604</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Total costs and operating expenses</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_014de0ec-38cc-4d79-b69f-8c07f86d86aa" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:CostsAndExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">136,384</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_37ae5b7b-de93-4744-ba12-779c741a862c" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:CostsAndExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">148,076</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_98641ca7-6486-41a3-bad1-5edfba9a99f9" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:CostsAndExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">427,558</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ad3ad15f-7e98-4500-9371-d9b6e7059c96" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:CostsAndExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">438,941</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Income from operations</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cf9a4929-7dfd-48c0-bea7-221b47f931ab" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,808</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eb160883-8cca-4574-8501-1307eddd77e0" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">52,665</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ee735643-98d8-426c-b8e3-a33bad0e3382" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">55,463</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_15b5a315-17f4-43f3-835c-dc72ed92f0c5" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">175,833</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Other income (expenses):</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Investment income</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_394f7e9d-23e0-4260-a766-7e9548d1e41d" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:InvestmentIncomeNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,662</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2a650781-be8a-49d6-ae9b-49477dd78f60" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:InvestmentIncomeNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,177</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e435e4b8-c039-4306-a310-00a6ea07d714" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:InvestmentIncomeNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,112</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c70b09f5-0faa-41fa-8f77-e0c2f2dd28e7" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:InvestmentIncomeNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,962</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Interest expense</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bd3dbd32-a238-431c-a234-8843b7d71509" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:InterestExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">269</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_76388e83-19f3-41c4-89a5-7d2bc33cf6c0" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:InterestExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">329</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9d190698-19b0-493b-9107-ce5d9ff876bc" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:InterestExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">813</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_386a3713-3e38-4c6c-bbb7-1afef3001b4c" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:InterestExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">892</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7860c92d-2772-4c01-88bf-f3aabf4382bf" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="rgen:AmortizationOfDebtIssuanceCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">459</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ce713342-70fb-42cd-a496-7f34de4cb9f1" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="rgen:AmortizationOfDebtIssuanceCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">455</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fa8817ed-b737-41b6-b72f-2b7afb0de334" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:AmortizationOfDebtIssuanceCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,373</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4d5cf455-3c18-44ed-92f0-0501fcc88f4b" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="rgen:AmortizationOfDebtIssuanceCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,360</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Other income (expenses)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_16add646-5966-48ab-a45b-e644b7dbdb7b" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:OtherNonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">895</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ad938326-6d82-4057-b815-98c08bb31d47" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:OtherNonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">6,591</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6174df35-0d81-4916-bc5a-3f9b0df04856" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:OtherNonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,500</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cd884f50-91ad-410c-90ea-6b1dffb8c6c3" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:OtherNonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10,389</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Other income (expenses), net</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_05edf51e-13f9-4126-af5a-7ecd4a150ee7" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:NonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,829</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_af7d5ef6-6c3e-42d5-9b6e-67ff33e5ebd5" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:NonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">5,198</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d1bb6269-3639-4f80-8905-3817d9f99b19" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,426</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_772fdf6b-9a5f-4a46-94f2-2cfe7481644f" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NonoperatingIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">9,679</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Income before income taxes</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2e04c132-c4d2-44e9-b473-d78321b2c851" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,637</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1d506e9c-8842-4f8d-9711-20b6fda2ff17" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">47,467</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f571e385-262d-41dd-8297-4061786825de" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">72,889</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cecfbcff-479b-4649-a698-e03c51d2f562" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">166,154</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Income tax (benefit) provision</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a2d85a60-c143-40b9-8625-fbcdf7ec383a" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">6,535</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b7a90747-42dc-411c-a9ba-852a60b490bf" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,062</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_03ccabea-e833-443d-9eaa-c9427cafdb73" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,824</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ebc5ca55-86a5-4d38-b119-51885dd47317" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">28,924</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_14613035-df43-4da8-a3b7-e9fe2af8eeef" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,172</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8af7f01a-325d-483b-92e6-b051f7fffa71" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,405</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_91fce62e-4505-40de-bd22-30e2cf4177f4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a7f6b737-5f2c-4822-90c5-ac478a849ece" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,230</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnings per share:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Basic</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f076a51a-0c43-4a43-801c-77a8446545e7" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.33</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_264817c8-4fad-4bff-b4e1-923ee0b2e6b1" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.73</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cb725049-7aea-4f28-9d47-fbcc3cd68b79" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.20</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d0b17260-39b0-435c-bea6-b33406c7ac78" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">2.48</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Diluted (Note 12)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8acd6a0e-d204-4e18-975b-6c85687230ab" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.32</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_23e6e6cd-8174-4fe4-80fe-6339d322d4bf" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.71</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f5a1eb38-81af-4b75-8bd6-f56789ea52e9" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.18</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_419988de-eadc-4a59-bd40-36b9f509e81a" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">2.39</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted average common shares outstanding:</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Basic</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b52f0ff5-4c4e-454a-8876-024c06f9a251" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,766</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c31f8fb1-3977-4c22-a1cb-c7b143df6fe1" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,498</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_245091e4-f42a-4240-9307-697ddd5efc87" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,688</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fcd91bc1-d149-4e42-bd27-15a7a4a7b37e" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,432</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Diluted (Note 12)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_997fee7c-16cf-4e90-adf9-792bfcb57bc8" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">56,940</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5944b8a2-fd8f-4dbc-ac1a-163bf3db9bd5" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">57,304</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5519d2fa-daa7-49e5-a23d-54977dd93506" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">56,933</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d66fc905-446d-443f-8329-f092ea697a6b" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">57,598</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c946cdba-5803-4fde-a28f-8f88f0cc02b9" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,172</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8a128f1b-e03d-4c32-b0bb-1652aa7add6a" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,405</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_352aa657-3809-42f0-8c35-88c8256eae1d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0ec5d05c-2c76-454c-b264-f4d5a4a26373" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,230</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Other comprehensive income (loss):</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Foreign currency translation adjustment</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1f4cb616-4ea9-444a-a522-647b3b961479" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">6,382</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_62f95b82-5d9e-4660-a235-fc5f68968d47" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">18,170</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_51adac27-23ef-48ba-a4b3-705787b49e1e" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">9,177</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_af3455ff-df29-445c-a628-352f648bee4d" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">38,375</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Comprehensive income</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_83ab30d5-a6d8-4ae3-82e5-93e11ffd91fb" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,790</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b629b2db-39e8-46f6-879f-b7c9ab7651a7" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,235</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9fdd452c-5148-4ebc-b344-f71a3d487113" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">57,888</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b5eedb45-997b-4a4d-a862-167d3f1abaa8" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">98,855</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">REPLIGEN CORPORATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="statements_of_stockholders_equity"><span style="text-transform:uppercase;color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONDENSED CONSOLIDATED STATEMENTS </span><span style="text-transform:uppercase;color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">OF STOCKHOLDERS&#x2019; EQUITY</span><span style="text-transform:uppercase;color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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-style:italic;min-width:fit-content;">(Unaudited, amounts in thousands, except share data)</span></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:36.567%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.462%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.18%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.542%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.18%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.542%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.18%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.942%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.18%;"></td>
    <td style="width:1%;"></td>
    <td style="width:5.921%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.18%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.121%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="22" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended September 30, 2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Common Stock</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Number of<br />Shares</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Par<br />Value</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Additional<br />Paid-In Capital</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br />Other Comprehensive<br />Loss</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Retained<br />Earnings</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Total<br />Stockholders'<br />Equity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at June 30, 2023</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_657cfe4b-cfaf-41ee-bb40-e005bcc39c0f" contextRef="C_cbedbaad-0c9b-428f-afd3-94fc7c3d0e5e" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,744,896</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a4962619-8647-4555-9577-b8251ceb244f" contextRef="C_cbedbaad-0c9b-428f-afd3-94fc7c3d0e5e" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">557</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_123600a3-f1ad-447a-bd2a-73f71b766476" contextRef="C_8c9b452d-424b-4461-bf60-db4ea582123f" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,561,393</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3501d18f-2649-4eb8-bb21-d554fa60c69e" contextRef="C_e1f2d150-80c4-461e-b196-6c602f098185" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">37,189</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f0ecb70d-e16e-4123-b29c-007fe9db4d2e" contextRef="C_4d401095-4107-467d-9745-b9fa041d95fe" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">446,165</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_655e3a8f-9c4a-4af9-b8de-da49cc57a2c2" contextRef="C_4eda6e14-d766-43da-98a6-1b0af1d01966" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,970,926</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3896b42e-56d9-47aa-b628-d5c64955db39" contextRef="C_1f018b06-14dd-482c-b295-952d4d3f48b1" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,172</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1b339eaf-a5d1-455f-85a7-8e45fcc74276" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,172</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock for debt conversion</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a0edaecd-d7ea-4e7c-85b0-c4cb13305eaf" contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">2</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6849781c-7e45-4422-83e0-a716dcc5e9de" contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_404647fc-821b-4374-8baa-ee722564c9d2" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Exercise of stock options and vesting of stock<br />&#160;&#160;&#160;units</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7fed6f05-f25d-449c-9273-d975109cc3d3" contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">36,195</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d57e73ba-3aa1-4b05-8b44-b8a3df29b994" contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3cb7b6cc-2a31-404c-ba6e-d58139caa268" contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">293</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c66241d7-23c1-4469-ac25-516d5ebc2f18" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">294</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Tax withholding on vesting of restricted stock units</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2aabda8a-8c85-44f1-a926-678b8c374c36" contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">6,387</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6d4db4b2-825d-4307-82f8-c57d7b171412" contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_66af8d0d-b510-4520-8d04-9b194741f916" contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,038</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b38a7220-bbe5-42ff-98bf-4b36d57a8c14" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,038</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock pursuant to the acquisition of<br />&#160;&#160;&#160;FlexBiosys, Inc.</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2723c9a4-7b2e-431d-a2f7-9390d865f91c" contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892" name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">222</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c6fe6536-eb50-41d3-96b1-f11849d18cab" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">222</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4f1a3251-6242-4ab2-96c1-0309d4364ab2" contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,373</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cf5962d4-6825-43c5-af6f-15cce3f1f3c5" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,373</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Translation adjustment</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9743379c-a01d-4a62-9505-b3e580eb9ebf" contextRef="C_e1f2d150-80c4-461e-b196-6c602f098185" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">6,382</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_29ecd8e7-f1a9-4379-bc43-812829eb59e7" contextRef="C_4eda6e14-d766-43da-98a6-1b0af1d01966" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">6,382</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a408a855-1ba4-4f82-92cb-bc4d1632a483" contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,774,706</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e2f31890-34d8-4b06-9f09-fa6814f41a57" contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">558</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_23759e93-067d-4d6b-8359-4df7877e9953" contextRef="C_1b90f9fc-d292-4406-813d-792497ad018a" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,567,233</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fab143eb-1072-4a8f-b8ff-2c6adc8bb43d" contextRef="C_3536ed09-09c6-4e4b-8140-cc2ccd353292" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">43,571</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_444ba81c-dbb8-4e49-8fb3-d7054c3a1f87" contextRef="C_0c9331ac-5a9c-43ca-87ee-2e9db469f8b0" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">464,337</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4380640a-2ffa-4899-b939-7a895635c57b" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,988,557</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:37.535%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.263%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.743%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.082%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="22" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended September 30, 2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Common Stock</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Number of<br />Shares</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Par<br />Value</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Additional<br />Paid-In Capital</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br />Other Comprehensive<br />Loss</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Retained<br />Earnings</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Total<br />Stockholders'<br />Equity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at June 30, 2022</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8bb3ac16-2545-462c-acac-86f11bf5098a" contextRef="C_edc5bd63-1c87-45d8-b2fd-5640d6402707" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,465,918</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_14d152b1-ad83-4b9f-a843-1758f5b5bdcd" contextRef="C_edc5bd63-1c87-45d8-b2fd-5640d6402707" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">555</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bea53c3b-fd15-484a-aa4c-bb8b74d9017a" contextRef="C_bebb9618-8aa6-4570-a4f5-0cf5cee32e19" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,533,762</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c4e9e15d-d3f9-4498-86af-c331dcdcbd32" contextRef="C_89c4168e-326f-46d9-971e-1071c9bfe989" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">37,091</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dd1c14cb-bd5f-40de-bcef-453fb5fdcfa1" contextRef="C_fdeb0a7f-0bac-440a-8977-1826c35bb0b0" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">308,138</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c3af94db-5396-4fea-95bf-c6881b293a15" contextRef="C_83ad0496-4c4b-4639-8ea5-3812418b1344" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,805,364</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_02f4238b-7942-401d-ab86-0f6c7030d12e" contextRef="C_3d1eada0-7331-48c5-9e0d-9c8a9f571fce" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,405</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b10dec26-9b00-45c0-a5d1-8aba79e5d4d7" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,405</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock for debt conversion</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e2e0cf87-339e-484e-9152-28191f5b75f9" contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">3</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f3a59e4e-d5d1-4ccf-86f4-4749524b1d41" contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4ee77b16-f479-4f18-8034-488669b8263a" contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fe50bfec-5f9a-49a3-8ee2-485b4a23c7a2" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Exercise of stock options and vesting of stock<br />&#160;&#160;&#160;units</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a8c100de-110e-4c33-9d5a-8c48fb1ea496" contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">59,112</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_18be8e00-1394-4741-9f7b-eb821112208c" contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0233bb03-bedc-4405-ab6a-6322998225f0" contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,321</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_75ceba3b-70f0-4e57-afc4-e9ef196a5113" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,321</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Tax withholding on vesting of restricted stock units</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a26f9e92-9b98-434e-aa36-414281de4f1a" contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">5,387</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_74c46620-6b22-4b0c-97f5-c8bf3515882c" contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f760519c-7027-4791-8f18-0215ed248da3" contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,070</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b69d9eee-695c-424d-a310-a2109b9e2488" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,070</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9b6b025e-377a-47d9-957b-56f112358e6c" contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,154</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_805d2b1e-1389-4279-a920-84f3f17270d9" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,154</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Translation adjustment</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_50ae78f8-02c4-49fc-a99a-c612f2755e92" contextRef="C_89c4168e-326f-46d9-971e-1071c9bfe989" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">18,170</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ceafc1dc-ef17-4891-92cb-b87aaf777535" contextRef="C_83ad0496-4c4b-4639-8ea5-3812418b1344" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">18,170</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c01fb127-1e50-4e6b-b1b6-25ab8621f883" contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalOther" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">105</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_17262f2d-fd6b-48e3-9d3b-49b0a6ba88ff" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalOther" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">105</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2022</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7fba03d8-d6b4-49c6-9b07-ddf17012a931" contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,519,646</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_edce18dd-9e20-44f2-a487-359cffbee8f4" contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">555</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_058cb58f-006d-4ecc-9423-b738ef8ee6e3" contextRef="C_2a81b44c-85b5-439f-8855-cc98c05915f6" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,541,272</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_83b709ac-192f-4d24-94e6-2afd4b65da9f" contextRef="C_7bd58d0f-f1e5-46cd-bc3a-4c87d2c45877" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">55,261</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_28dddd92-beba-4e53-b6cc-19bddde3b03c" contextRef="C_b4f364db-132b-40d2-8982-d6633ec4c788" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">348,543</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_354f73aa-8eca-47aa-8a39-eda69b0eb0e8" contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,835,109</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:37.535%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.263%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.743%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.082%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="22" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended September 30, 2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Common Stock</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Number of<br />Shares</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Par<br />Value</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Additional<br />Paid-In Capital</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br />Other Comprehensive<br />Loss</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Retained<br />Earnings</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Total<br />Stockholders'<br />Equity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_38b3e4e7-dbae-4328-b894-0c7d051d761a" contextRef="C_70d2ee71-05f1-4dbf-b306-8baa2a30b302" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,557,698</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8f2e31ff-8d5b-4e25-8945-47d74c06386c" contextRef="C_70d2ee71-05f1-4dbf-b306-8baa2a30b302" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">556</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1f5a1cff-6af2-4c03-9393-f83a0fc1b305" contextRef="C_c8e8dba7-df36-4adf-8206-c18e4a8bd3d2" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,547,266</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_249ca79f-57c6-42c1-bc88-7b91c11db41b" contextRef="C_4990472e-defa-4176-a295-070ee8724fa0" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">34,394</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_08d411bf-80a0-417e-9fe5-53cbf1a82561" contextRef="C_85784f19-a202-4d13-99bd-01a270cc879f" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">397,272</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b4e5cc70-5a9a-4887-bafe-3eefacbe66dd" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,910,700</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e948edda-26c5-4bec-87a4-02c5cb8adb6a" contextRef="C_9f8a6274-46f2-432d-b9a1-33f4400d7ebd" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_991906d6-0a82-4a4b-9fc4-0a294277d4ef" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock for debt conversion</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0031c4e9-1e05-4351-8ecb-78b59eb63a87" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">8</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0dbb2b7e-1e81-4da1-95a0-b8008a28f9ca" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ec15ae12-0d70-4dea-b639-097ea0645da7" contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">13</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d8ea388a-76be-4f77-bf3d-e1e2ae21cf2f" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">13</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Exercise of stock options and vesting of stock <br />&#160;&#160;&#160;units</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9f245f4b-7649-443b-9f0d-03318f9f93bd" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">212,589</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8dcfdbc6-b7ca-4db8-9954-a02df6369c85" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_74354c30-a4d5-4074-8e21-681580d0e972" contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">353</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_50d2b55d-da12-4e57-8dbf-1899560e527c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">356</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Tax withholding on vesting of restricted stock units</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_86ff52e4-b7d2-4fea-af9c-12cb4e666000" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">69,625</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c5d3d2c4-936f-4eca-8019-5781b34c32b5" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ed3454fd-c619-42bc-b531-e1613eba5233" contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,177</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_09673de2-98e7-44f3-9724-8cfd2f166719" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,178</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock pursuant to the acquisition of<br />&#160;&#160;FlexBiosys, Inc.</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_20e2e78f-19eb-487d-ba27-55ff0f0541fb" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:StockIssuedDuringPeriodSharesAcquisitions" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">31,415</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_547a6b7f-7c9c-4d64-9107-fec4e7cb3304" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dbeb4612-e0e0-4362-9b31-eb7ceb8b88d2" contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5" name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,465</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ffd6a154-0075-454d-abf3-e11cad724d68" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,465</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock pursuant to the Avitide, Inc. <br />&#160;&#160;contingent consideration earnout payment</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3c70342a-2f60-43e5-80b3-9946b865033d" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="rgen:StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">42,621</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7d2d8820-707f-407e-bff8-97feea32e1a9" contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c" name="rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bbdf3eab-7652-49f9-89fb-1fb47aebf335" contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5" name="rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,229</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_106fa0ed-7a54-449f-a178-fb93dd4e5cdc" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,229</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5211cf47-3310-41ff-b681-2f9a414e5d1c" contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,110</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_58ca6fa5-c4e4-42c8-98e8-c1fd4fb31da7" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,110</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Translation adjustment</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_674a5137-c2ac-4989-bfdb-778ae34bf80b" contextRef="C_4990472e-defa-4176-a295-070ee8724fa0" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">9,177</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_94e40e74-b9e1-4ea4-a4fc-2841b79f35de" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">9,177</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_faa13645-98ff-42c6-af35-5a7fb2eeb4ae" contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,774,706</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1f4e444e-32f9-4dc2-8966-91c3ca3ce7b4" contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">558</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_56180200-dc22-4b19-a703-88d82b49d233" contextRef="C_1b90f9fc-d292-4406-813d-792497ad018a" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,567,233</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1d86e396-78b6-467d-98e8-97079aeb12fd" contextRef="C_3536ed09-09c6-4e4b-8140-cc2ccd353292" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">43,571</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1b70b055-b966-4d24-8600-efdfe6ae8233" contextRef="C_0c9331ac-5a9c-43ca-87ee-2e9db469f8b0" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">464,337</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d2d9dbc6-261b-4b8f-849b-44b7dc83efbd" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,988,557</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:37.535%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.263%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.743%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.082%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.08%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.323%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="22" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended September 30, 2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Common Stock</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Number of<br />Shares</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Par<br />Value</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Additional<br />Paid-In Capital</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br />Other Comprehensive<br />Loss</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Retained<br />Earnings</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">Total<br />Stockholders'<br />Equity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2021</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2bf662e9-d1e9-4840-8ea8-169008eeea1c" contextRef="C_0f10afd9-4d70-446a-aecb-5ca89dd3f2b6" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,321,457</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5b977766-29c2-4bcd-8409-2c724886b0d3" contextRef="C_0f10afd9-4d70-446a-aecb-5ca89dd3f2b6" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">553</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b7a16200-01ac-42e8-aab8-bae6f460eab5" contextRef="C_b74e52bb-2626-4d31-ae8a-97dd6358650f" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,572,340</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d25c8c3a-17e8-49ce-a4d7-97966f543f4a" contextRef="C_44d43283-ca3d-455e-9caa-433c35acd70d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">16,886</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fd5849cf-d8b7-4f50-9e75-7bfbb274f323" contextRef="C_11826311-475d-42db-8c63-2231469adce3" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">194,060</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8e129da1-2755-4c37-8ded-d7a1341b0462" contextRef="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,750,067</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Impact of the adoption of ASU 2020-06</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_55a33dac-6ab5-481a-9bd9-0597de0426db" contextRef="C_70523811-ec9c-4099-b492-db439653b382" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">39,070</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_26a7f0ac-fa82-4c87-8a72-b6d5282c1d25" contextRef="C_4e0b36ec-43f6-4229-8ad1-e5ec31647396" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,253</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_869c8c5a-fcf3-40a4-aa4d-ce03a5e1a3bf" contextRef="C_e042f503-5f54-449d-8702-4997946185d3" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">21,817</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e89cc280-ad18-41b8-9357-170ae0b0a691" contextRef="C_214729b5-2a82-4056-8ae3-23a22617eab1" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,230</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6581b300-d37d-41a7-8afd-425ee18ec26b" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,230</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Issuance of common stock for debt conversion</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e6f11ef0-5b45-44c6-baeb-dd79a27013dc" contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">15</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7f1bf00b-663b-46b7-8203-050113efae73" contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_91def8c1-3761-414b-a48a-00972a5f8746" contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">5</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_db2dd2e7-25bc-48a7-a93a-43e3a4369a01" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">5</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Exercise of stock options and vesting of stock<br />&#160;&#160;&#160;units</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_23c83cc5-2335-48ba-8f6c-d1a352180200" contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">281,839</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_38e87d4b-f04e-4331-92e4-73e0b17b9d47" contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d9bf89e4-49d8-413f-a783-90f0c4fba0aa" contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,781</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_caad56e1-149f-4755-b73f-575e028e7e11" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,784</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Tax withholding on vesting of restricted stock units</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5fa79775-12ce-4e30-8697-4300f32f8dba" contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">83,665</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_173a9cb2-ddaf-48b8-af00-dfbe2c7345de" contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9509c5b7-4a98-4654-a3fa-6d35d991429e" contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,828</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_77046a47-6888-4f72-b6f7-ec4926d3885d" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,829</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eef19c78-8d8f-48bf-b1b0-6a9f1365ed70" contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,054</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_018317cb-a5e6-4054-95c6-b88523b21370" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,054</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Translation adjustment</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cc501841-c833-4676-9966-f1f4953d34e9" contextRef="C_44d43283-ca3d-455e-9caa-433c35acd70d" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">38,375</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_efda85cb-5744-430d-b780-5a87c93cf87e" contextRef="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">38,375</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2022</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_70aad2ba-7427-40b2-bc62-edcc9a861f52" contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d" name="us-gaap:SharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,519,646</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6c97353b-1051-432a-9376-49a8597195f3" contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">555</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f23721fb-448b-4939-b893-01e77551a412" contextRef="C_2a81b44c-85b5-439f-8855-cc98c05915f6" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,541,272</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fac6565f-f8a9-40e4-8f5a-473089eb4264" contextRef="C_7bd58d0f-f1e5-46cd-bc3a-4c87d2c45877" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">55,261</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d51e0e1e-efe2-454b-b3d2-5b23e57f6e77" contextRef="C_b4f364db-132b-40d2-8982-d6633ec4c788" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">348,543</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a02a3a40-1eb7-4e3d-b38e-15aeb3eb4755" contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,835,109</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">REPLIGEN CORPORATION</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="statements_of_cash_flows"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONDENSED CONSOLIDATED STATE</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">MENTS OF CASH FLOWS</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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-style:italic;min-width:fit-content;">(Unaudited, amounts in thousands)</span></p>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:75.1%;"></td>
    <td style="width:1.68%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.02%;"></td>
    <td style="width:1%;"></td>
    <td style="width:3.18%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.02%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cash flows from operating activities:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_34d62880-bd58-4ede-a61f-d4b7275b828d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5fbd3a3c-97b4-47f7-9946-697e67eaa44c" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,230</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Adjustments to reconcile net income to net cash provided by operating activities:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Depreciation and amortization</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_73b578e6-7fd2-4689-adce-041d2559b158" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">50,942</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_940da350-5f3b-4a10-a9b8-bb6bd201c2f9" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:DepreciationAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">36,605</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b78a644a-f9fe-48c8-bdd0-4ab14e77d9be" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:AmortizationOfFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,373</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_653b1295-eafe-4e89-9982-ab0238c1f5d9" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:AmortizationOfFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,360</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Stock-based compensation</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_08650a39-b24f-4d6f-8092-8a53246b8642" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,110</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e02eeb8d-5ed8-44fd-b212-f1fcd0e86dc4" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,054</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Deferred income taxes, net</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_865f815a-e24b-4b7a-b3d3-de4643afc791" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">9,756</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_30440e24-d1f2-40d4-86a9-4c7185af70fb" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,722</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e737eefd-2f60-4f41-86be-12be9d9cf62d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">31,266</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ea8ef7d1-ced1-4945-add5-65eb344a31f3" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,604</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Non-cash interest income</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_37792ddf-76f4-40b6-aeed-0c15723e17ed" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:NoncashInterestIncome" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,023</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bce365b2-2fd2-4521-b8e7-7bb8923da9d5" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="rgen:NoncashInterestIncome" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b214adea-08cf-4aad-b55b-03ddd0ea46e1" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:OtherNoncashIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">861</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_480febae-7ab8-439f-8f07-6cc9c1831ca9" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:OtherNoncashIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">210</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Changes in operating assets and liabilities, excluding impact of acquisitions:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_301052d6-1753-4ae5-a68c-2859fb1cbe8d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInAccountsReceivable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">8,315</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_efbdfed0-a700-4c79-8fea-d3357e3ac125" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInAccountsReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,609</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Inventories</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c14c5ba7-01bd-4f86-be9d-a9cf3b17ef94" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInInventories" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">25,979</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7d9c1de4-45e0-461f-944f-b99a4bf18aab" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInInventories" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">64,308</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e31a4f4f-005f-42f8-8170-945ee2e6bb1c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,733</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e7bfa348-02b3-49a9-bc2b-130c785baf2e" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">168</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Operating lease right of use assets</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b3701901-6598-4f72-9fcb-20484197db18" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10,203</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c1a97f82-e44d-4390-bc8a-e5030c7d8f97" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,033</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Other assets</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1f0b53de-589f-42c9-b96b-eb81d42cb56b" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">707</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_75fd1d23-2196-41d2-933f-442816779707" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">298</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accounts payable</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d77d2513-8caf-44a3-af4c-b430d6e1ac99" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">8,619</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5cbffad9-9710-42fa-bd5b-0ea4a512c434" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10,124</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accrued expenses</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_46b9d271-f891-4d17-9604-c739283b913c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">28,294</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_45a30a91-43f7-43ff-ab13-3776b4ba27a7" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,043</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liabilities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b344fe34-d1e6-46e6-9ea0-e06464538dc6" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">7,676</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_40d58134-ca6c-4263-a117-b6797a14ddb4" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,157</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Long-term liabilities</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_315ed5b7-763f-4b7c-917b-4c541915af2b" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">79</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4a83a3e5-f838-440d-b4e9-c98f119fe9ec" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">372</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total cash provided by operating activities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f1a07dcc-0678-43a4-a03e-d3bb63951ab1" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">84,853</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b6980024-167a-48e5-8177-de4b2784cde4" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">110,201</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cash flows from investing activities:</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Acquisitions, net of cash acquired</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a43a9701-a0a9-412e-ba68-2f1c1f50d744" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27,843</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2662b00e-214c-4f4f-bdad-d0b2345ea5ae" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Proceeds from maturity of marketable securities held to maturity</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d6159729-8441-4d82-814a-3b56f71db4f9" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">102,323</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_61dcb97c-aab0-4548-b458-b41b2f51c007" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Additions to capitalized software costs</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b3108553-815a-4d64-9347-f69fe575e6e4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsToAcquireSoftware" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,736</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e0644542-19f1-4136-a1a5-596eb4ad0ef1" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentsToAcquireSoftware" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,568</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Purchases of property, plant and equipment</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_04f19d35-4acf-47cd-92b8-3422729580cd" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,135</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eb20ef1a-da7e-4b73-805b-c107766bb63c" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">64,390</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Purchase of intellectual property</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3ea11fab-6fb0-4afb-b33c-c5fdabfe59aa" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsToAcquireIntangibleAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8da13f43-54dd-4eba-a1b8-504cf2ce1d01" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentsToAcquireIntangibleAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">45,000</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Other investing activities</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ba705a3e-8059-454f-964e-321c37c078b0" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">21</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4fd0b53c-44c8-4d5e-b3aa-4b1f4e739769" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total cash provided by (used in) investing activities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_efdace63-0cb9-4034-8b6c-86d03b1f4af3" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">46,630</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e3f1c8c1-1a21-4841-b0b0-96079b396b41" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">111,928</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cash flows from financing activities:</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Proceeds from exercise of stock options</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a4f04bd5-605a-4f8c-8402-b51c993f1c78" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ProceedsFromStockOptionsExercised" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">356</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_585b1999-df82-4944-b674-3212a5bcfdb9" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ProceedsFromStockOptionsExercised" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,784</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Payment of tax withholding obligation on vesting of restricted stock</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_caf60948-73bf-4373-9239-0e870566a4cf" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,178</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6dbf4058-6718-40f1-8daf-122f85bb0ae9" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,829</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Repayment of Convertible Senior Notes</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9b05a1a0-8c2f-41ab-8f9c-321841bf4cb2" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RepaymentsOfConvertibleDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">33</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c33c56aa-69ca-4e25-85db-bfb86d446f60" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:RepaymentsOfConvertibleDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Payment of earnout consideration</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5f2884d8-0ef7-4bce-9446-88ff0d75bea2" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,298</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dc742afa-478c-47b1-a401-24749e7c774d" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Proceeds from issuance of common stock, net</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2cc59476-8608-448e-a3e3-a66266ca0dde" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ProceedsFromIssuanceOfCommonStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">13</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1adeca43-1491-4883-bc5f-6eb460fb532e" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ProceedsFromIssuanceOfCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total cash used in financing activities</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f8c9a2d8-fe8a-4a56-95fb-642f92dbf1f4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">19,166</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7aa9ec9e-e71b-444f-aa81-fe0a994ee406" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">13,063</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Effect of exchange rate changes on cash and cash equivalents</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_41a77670-ac5e-4d0e-bdce-16b009ab0bda" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">4,996</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ad689e6d-0539-4808-93a4-63cb2a278df6" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">15,661</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net increase (decrease) in cash and cash equivalents</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_51a7c50f-5fa4-43d9-b250-f7a39046b5fd" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107,321</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7da2f527-e8bb-4035-b650-31317d19cb51" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,451</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cash, cash equivalents and restricted cash, beginning of period</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_42b17f43-5fb5-4f04-b31b-7432a0b76af1" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">523,458</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_be4620c3-e185-49b9-938c-6a472b8ae6e8" contextRef="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">603,814</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents, end of period</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0230da14-ed1f-4b59-a967-c6d5d637d8f7" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">630,779</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c1faf473-9de9-49c9-841b-575a9527b779" contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">573,363</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Supplemental disclosure of non-cash investing and financing activities:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Assets acquired under operating leases</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3f850510-3cf5-476e-8fa6-742a07962964" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,129</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_12004f78-c4f8-4074-9ded-1ba80ebaa395" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,705</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fair value of </span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2cc4f549-50eb-45fe-bdb9-aae2f25c3c6c" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">31,415</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;shares of common stock issued for the acquisition of<br />&#160;&#160;&#160;&#160;&#160;FlexBiosys, Inc.</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dcdd6af9-801a-43b0-ae34-c882a29b0476" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:StockIssued1" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,465</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2a6911de-6d85-470e-b698-0c2726c7bbad" contextRef="C_19ac52bd-03cc-41f7-a604-85d57c92d47c" name="us-gaap:StockIssued1" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fair value of </span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3846743a-2eab-483f-ba6d-b4923e7135b1" contextRef="C_51d8287b-dcef-48fc-883f-8e1c478a2b86" name="us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">42,621</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;shares of common stock issued for the Avitide, Inc.<br />&#160;&#160;&#160;&#160;&#160;contingent consideration earnout</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0573a0e5-f638-4400-b749-c7876397d93f" contextRef="C_51d8287b-dcef-48fc-883f-8e1c478a2b86" name="rgen:FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,229</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9396bbcf-c850-4b5e-8997-e4b148a0fcc9" contextRef="C_c7266c47-3f9c-4cd0-b4a6-6df11f50fe30" name="rgen:FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these condensed consolidated financial statements.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">REPLIGEN CORPORATION</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="notes_to_financial_statements"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONDENSED CONSOLIDATE</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">D FINANCIAL STATEMENTS</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">(Unaudited)</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f316346c-1ef0-4bbb-bc56-3993bcc15e42" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SignificantAccountingPoliciesTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">1.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Summary of Significant Accounting Policies </span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_95b0efca-6930-43cb-a3fc-46269e6b6d84" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Basis of Presentation</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The condensed consolidated financial statements included herein have been prepared by Repligen Corporation (the &#x201c;Company&#x201d;, &#x201c;Repligen&#x201d;, &#x201c;our&#x201d; or &#x201c;we&#x201d;) in accordance with generally accepted accounting principles accepted in the United States (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the United States Securities and Exchange Commission (&#x201c;SEC&#x201d;), for Quarterly Reports on Form 10-Q and Article 10 of Regulation S-X and do not include all of the information and footnote disclosures required by GAAP. These condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and accompanying notes thereto included in the Company&#x2019;s Annual Report on Form 10-K for the fiscal year ended December 31, 2022, which was filed with the SEC on February 22, 2023 (&#x201c;Form 10-K&#x201d;).</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. The business and economic uncertainty resulting from government-mandated actions in response to the COVID-19 pandemic, including all subsequent variants of the SARS-CoV-2 coronavirus (&#34;COVID-19&#34;), global geopolitical conflicts, supply chain challenges, cost pressure and the overall effects of the current high inflation environment on customers' purchasing patterns has made such estimates more difficult to calculate. Accordingly, actual results could differ from those estimates.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The condensed consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries.  All significant intercompany accounts and transactions have been eliminated in consolidation.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company made no material changes in the application of its significant accounting policies that were disclosed in its Form 10-K. In the opinion of the Company, the accompanying unaudited condensed consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of its financial position as of September 30, 2023, its results of operations for the three and nine months ended September 30, 2023 and 2022 and cash flows for the three and nine months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8bc0701c-98bb-43eb-963c-0dfb22a3c0b8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Recent Accounting Standards Updates</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider the applicability and impact of all Accounting Standards Updates (&#34;ASU&#34; or &#34;ASUs&#34;) on the Company&#x2019;s condensed consolidated financial statements. As of September 30, 2023, there were no accounting standards or ASUs recently issued or effective during the fiscal year that would have a material effect on the Company's condensed consolidated financial statements or disclosures.</span></p></ix:nonNumeric></div></ix:nonNumeric></div>
  <div><ix:nonNumeric id="F_976e33bf-eff9-4d42-87c7-27b333a74af0" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:FairValueDisclosuresTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">2.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair Value Measurements</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company uses various valuation approaches in determining the fair value of its assets and liabilities. The Company employs a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that market participants would use in pricing the asset or liability based on market data obtained from sources independent of the Company. Unobservable inputs are inputs that reflect the Company&#x2019;s assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. The fair value hierarchy is broken down into three levels based on the source of inputs as follows:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:95.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:12.359%;"></td>
      <td style="width:87.641%;"></td>
     </tr>
     <tr style="height:10pt;">
      <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 1 -</span></p></td>
      <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that the Company has the ability to access</span></p></td>
     </tr>
     <tr style="height:10pt;">
      <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 2 -</span></p></td>
      <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities</span></p></td>
     </tr>
     <tr style="height:10pt;">
      <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 3 -</span></p></td>
      <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Valuations based on inputs that are unobservable and significant to the overall fair value measurement.</span></p></td>
     </tr>
    </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The availability of observable inputs can vary among the various types of financial assets and liabilities. To the extent that the valuation is based on models or inputs that are less observable or unobservable in the market, the determination of fair value requires more judgment. In certain cases, the inputs used to measure fair value may fall into different levels of the fair value hierarchy. In such cases, for financial statement disclosure purposes, the level in the fair value hierarchy within which the fair value measurement is categorized is based on the lowest level input that is significant to the overall fair value measurement.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Cash, Cash Equivalents and Marketable Securities Held to Maturity</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_affcb8fa-72cc-42f7-a59c-9614563e9399" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the Company's cash, cash equivalents and marketable securities held to maturity as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022 (amounts in thousands):</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:46.843%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized<br />&#160;Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br />Unrealized<br />Gains</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br />Unrealized<br />Losses</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br />Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and money market funds</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b3ed440d-2697-47dd-8df9-c93d6e6fb0fb" contextRef="C_e4765433-97ed-401e-8926-9e289252220b" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">630,779</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6774cf1d-de96-4e19-8f4b-9e2150d32d24" contextRef="C_e4765433-97ed-401e-8926-9e289252220b" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">630,779</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash and cash equivalents</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_aa4005c4-31e9-4598-a2b8-b7d3260f7be0" contextRef="C_ba888aed-dc97-4aeb-80fe-2cd42030c882" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">630,779</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4f5bc2f4-61f2-4724-9342-dd657ead43e3" contextRef="C_ba888aed-dc97-4aeb-80fe-2cd42030c882" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">630,779</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">As of December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized <br />Cost</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br />Unrealized<br />Gains</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br />Unrealized<br />Losses</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br />Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and money market funds</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_886bb43c-2135-4526-9bce-b7348367f48b" contextRef="C_4aa55425-0a01-4df8-8aa3-6125e75c9e6f" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">523,458</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5440fac6-e66e-4251-a381-b6f554b9e695" contextRef="C_4aa55425-0a01-4df8-8aa3-6125e75c9e6f" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">523,458</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash and cash equivalents</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4d1951e1-aa44-4618-b6ff-ec7247133729" contextRef="C_2d8d1da4-1b3c-43fd-a1a0-d88015ad309c" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">523,458</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f7f64500-d8bf-4eb7-bbc3-757dae17d15c" contextRef="C_2d8d1da4-1b3c-43fd-a1a0-d88015ad309c" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">523,458</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Marketable securities held to maturity:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">U.S. treasury bills &#x2013; short-term</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_782c731a-76ad-4066-bd2d-4bf20eee1aaf" contextRef="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,299</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_609ff7c6-9d9d-4f8a-945e-087a973e8b60" contextRef="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc" name="rgen:DebtSecuritiesHeldToMaturityGrossUnrealizedGain" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e97a7b11-4244-4bcd-a10f-143f2b9d91b7" contextRef="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc" name="rgen:DebtSecuritiesHeldToMaturityEstimatedFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,323</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash, cash equivalents and marketable securities</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a8d84328-07d4-4d26-889c-ebe3f3055cb7" contextRef="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54" name="rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">623,757</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8271e594-1931-400e-96cf-092d8d59e227" contextRef="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54" name="rgen:DebtSecuritiesHeldToMaturityGrossUnrealizedGain" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3e814b6a-952a-472d-b1ce-333acc561e42" contextRef="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54" name="rgen:AvailableForSaleSecuritiesEstimatedFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">623,781</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the fourth quarter of 2022, the Company purchased $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_095deebf-3e06-4d6c-8088-03c108929624" contextRef="C_d7d37b09-d270-4cbb-a9da-f9e9f636fbc8" name="us-gaap:TreasuryStockValueAcquiredCostMethod" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">100.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of 6-month U.S. treasury bills with the positive intent and ability to hold them until maturity. Therefore, the Company classified this investment as held to maturity and stated it at amortized cost on the condensed consolidated balance sheet. These U.S. treasury bills matured in June 2023. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_81f3b6a5-15ff-44d5-8635-9498902ee1d9" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock" escape="true" continuedAt="F_81f3b6a5-15ff-44d5-8635-9498902ee1d9_1"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The amortized cost and the fair value of the Company's held to maturity securities by contractual maturity at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022 is summarized below:</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_81f3b6a5-15ff-44d5-8635-9498902ee1d9_1"><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:57.008%;"></td>
        <td style="width:2.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.440999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.440999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.703%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized<br />&#160;Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br />Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Maturity of one year or less</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_30ef4ae6-0d6c-4981-a1f2-b56b89ecb9d9" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,299</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4b1ed175-63fa-4821-9f92-0f2d7bbc9c01" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,323</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2c4ebaca-245d-44de-ae98-7f52f20f4669" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,299</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_29347e5d-a06a-4fa1-8ce0-74f35e4f6b50" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,323</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9</span></p>
       <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude></ix:continuation></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Fair Value Measured on a Recurring Basis</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_ffff171e-f11a-4e9a-af87-54d125a9f701" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial assets and financial liabilities measured at fair value on a recurring basis consist of the following as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022 (amounts in thousands):</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:46.501%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 2</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 3</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Money market accounts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_465a3408-a874-4004-8f4a-181fabb263bb" contextRef="C_56de56c9-17e8-4a0a-9d37-a1c65d482e15" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">389,473</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cd5de8ca-9642-4dc5-940b-5c3a057a93f8" contextRef="C_dfef19f0-4a11-43ab-84a9-91b3b09337ef" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">389,473</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Liabilities:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Short-term contingent consideration</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c3f80d54-3286-488c-8901-298686c3979f" contextRef="C_d057084f-8601-4496-91e9-7fbcf94b4456" name="rgen:ShortTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,589</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4cf561d3-f6a1-49a4-9b8c-a9e532630042" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="rgen:ShortTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,589</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Long-term contingent consideration</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6e82135c-f710-4860-8170-ecb610b249a9" contextRef="C_d057084f-8601-4496-91e9-7fbcf94b4456" name="rgen:LongTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,759</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bcd6aade-ae6a-4a2b-a508-fa6667dd1e4e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="rgen:LongTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,759</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">As of December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 2</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 3</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Money market accounts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c50f313d-16a9-4e10-b640-bafb26486f5e" contextRef="C_54886403-e19a-4dfc-99c5-a193e57198e7" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,929</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eeda21cc-448d-4832-9b73-d558bb05b7fc" contextRef="C_755445a6-cd7b-433e-8ed9-88c0064de373" name="us-gaap:AssetsFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,929</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Liabilities:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Short-term contingent consideration</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e334a2ed-5536-40c8-a95b-305ea4b5b141" contextRef="C_3daf5c5c-4edf-45fb-8e28-01fca25247f6" name="rgen:ShortTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,950</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c4741e7e-93f6-4573-b811-31bcb49e1466" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="rgen:ShortTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,950</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Long-term contingent consideration</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_167c64c1-304c-4ab6-862d-0df4003151a0" contextRef="C_3daf5c5c-4edf-45fb-8e28-01fca25247f6" name="rgen:LongTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">51,559</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ed3cc88b-b525-4b31-ae16-2c1ee3031cd9" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="rgen:LongTermContingentConsideration" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">51,559</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contingent Consideration &#x2013; Earnouts</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the maximum amount of future contingent consideration (undiscounted) that we could be required to pay in connection with the completed acquisitions of Avitide, Inc. (&#34;Avitide&#34;) in September 2021 and FlexBiosys, Inc. (&#34;FlexBiosys&#34;) in April 2023, was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0e5ed7ac-aebf-4ef8-b08d-9ffa4384bb60" contextRef="C_51d8287b-dcef-48fc-883f-8e1c478a2b86" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">125.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million over a three-year earnout period and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4e5e1a75-60e2-4b16-94b6-d2b631564f07" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">42.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million over a two-year earnout period, respectively. Refer to Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Acquisitions&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in Part II, Item 8, &#x201c;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial Statements and Supplementary Data&#x201d; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to our Form 10-K and Note 3, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Acquisition of FlexBiosys, Inc.,&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to this report for additional information on the contingent consideration earnouts.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2023, expected results and a change in market inputs used to calculate the discount rate, resulted in a decrease in amounts reported as of September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b67d7d3a-2b40-417c-9516-50b6db0a10f0" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" escape="true" continuedAt="F_b67d7d3a-2b40-417c-9516-50b6db0a10f0_1"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of the change in the fair value of contingent consideration &#x2013; earnouts is included in the following table (amounts in thousands):</span></ix:nonNumeric></span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;">&#160;</p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_b67d7d3a-2b40-417c-9516-50b6db0a10f0_1">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:77.483%;"></td>
        <td style="width:2.194%;"></td>
        <td style="width:1%;"></td>
        <td style="width:18.322999999999997%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_028e37a2-4cde-43f7-8adc-8f97680f4f4c" contextRef="C_9a23c019-0476-42a1-bebb-8fef85487d30" name="us-gaap:LiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">65,509</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition date fair value of contingent consideration earnout</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5ae18179-4f10-407d-b426-a5efdbecaa34" contextRef="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,632</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Payment of contingent consideration earnout</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cce9475c-cc7e-4333-b466-6addcae6c768" contextRef="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">14,527</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in fair value of contingent consideration earnouts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f8957c49-452c-4c6c-b7d0-bad001845803" contextRef="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,266</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5ead0449-566a-4fd6-b5c2-678ee2a1ac12" contextRef="C_6099b1e0-951d-4096-8cd0-45f1352a1677" name="us-gaap:LiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,348</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></p>
       <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude></ix:continuation></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8f0fb258-fe1f-4152-84ed-5023b3ebb5fd" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" escape="true" continuedAt="F_8f0fb258-fe1f-4152-84ed-5023b3ebb5fd_1"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The recurring Level 3 fair value measurement of our contingent consideration earnout that we expect to be required to settle our 2023, 2024 and 2025 contingent consideration obligations for Avitide and FlexBiosys include the following significant unobservable inputs (amounts in thousands, except percent data):</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:18.14%;"></td>
        <td style="width:1.7%;"></td>
        <td style="width:1.06%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.32%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:16.04%;"></td>
        <td style="width:1.7%;"></td>
        <td style="width:11.7%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:13%;"></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contingent Consideration Earnout</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="3" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Fair Value as of<br />&#160;September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Valuation Technique</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable Input</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Range</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted Average</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability of</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Success</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c380fc45-a6f0-4f87-a85e-0282778ff23c" contextRef="C_a0f32af8-bf41-4524-8432-35b4fe4c8f39" name="rgen:ProbabilityOfSuccess" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_972e11a2-fadc-437a-a974-6a13b46b24ad" contextRef="C_b9fcda26-79f9-4cec-809c-4a8538eb5844" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Commercialization-based payments</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e39a8b07-7410-4ed4-9485-759d831817b8" contextRef="C_a0f32af8-bf41-4524-8432-35b4fe4c8f39" name="us-gaap:LiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,383</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Monte Carlo<br />Simulation</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0d76d874-ae56-4ad7-9789-14f0d701fc7f" contextRef="C_323fbe34-7f7b-4bb3-b3cb-66c509c7a295" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">7.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8b72cdc6-4dca-4073-8b42-47da22b1eac5" contextRef="C_b47fc7c0-aa97-483f-954c-6453caaa6da0" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">7.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Volatility</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2effce71-460e-4b56-af9a-0da8d3085cd3" contextRef="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9" name="rgen:VolatilityRateOfContingentConsideration" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">13.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3dd2f7ed-bacc-4b6e-8e04-ca51eda51a4a" contextRef="C_a47ca049-a970-400f-b17f-23a2967262f3" name="rgen:VolatilityRateOfContingentConsideration" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">24.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_414f0b7d-95e6-4bab-ab09-c9ccc654cd04" contextRef="C_cfd97fee-6741-43dc-bf9b-8a0f0b3ff041" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">21.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue and Volume-<br />based payments</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ecbf49db-793b-491b-8d91-607adb7cdcde" contextRef="C_4205a452-63ed-4b15-bb8d-d8a58e8528c5" name="us-gaap:LiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,460</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Monte Carlo<br />Simulation</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue &amp; Volume<br />Discount Rate</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_05fe640b-0c54-40ce-9de9-057f61175728" contextRef="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9" name="rgen:RevenueAndVolumeDiscountRate" 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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_70b246ba-cec6-4b18-863b-767eda09bc9f" contextRef="C_a47ca049-a970-400f-b17f-23a2967262f3" name="rgen:RevenueAndVolumeDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">9.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_abe5078a-881f-4ca4-a518-a807a1b99f5d" contextRef="C_64256d68-98ed-4170-b03f-39dfff90cc5f" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">8.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7ee109cf-5691-4e12-b47a-1de68508cb13" contextRef="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_03ab296d-e004-48d9-9ee0-8349b14ad9a7" contextRef="C_a47ca049-a970-400f-b17f-23a2967262f3" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">7.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f4b9f1f4-6463-42af-8f85-8310738a3324" contextRef="C_2d3bdc7d-a42e-4d3e-a455-f05b56dd8ad0" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability of<br />&#160;Success</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_122e8b78-699c-4b88-8f0b-8499333b75bb" contextRef="C_9309f5b7-5f6f-4683-8665-f36d7eec347c" name="rgen:ProbabilityOfSuccess" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_21f2f23d-20fc-42b1-a0d5-3b61740237a0" contextRef="C_a7a55267-da21-4945-96dd-90a1ead6dd5d" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Manufacturing line expansions</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d81e4f28-bc8d-49a9-a708-08a18874893b" contextRef="C_324df715-cbf3-4103-aadb-9094df374fac" name="us-gaap:LiabilitiesFairValueDisclosure" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,505</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability-weighted present value</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_540d3dcf-d109-40c9-ba5e-6d6f907b7e3f" contextRef="C_2c2f62ac-fa5f-4eb3-bf11-7ae904a232cd" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_928d139b-a638-48c9-ac92-8bd880b93532" contextRef="C_0b7e0bad-3f4a-41c9-a080-b0efc8569cec" name="us-gaap:DerivativeFixedInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6892dd40-47a6-42c4-a9da-672b7719b188" contextRef="C_3039311a-848a-433b-b94b-bb73d3fb5bb8" name="rgen:WeightedAverageDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div><div style="margin-left:3.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.447919145106397%;">(1)</span><div style="width:100%;display:inline;"><span><ix:continuation id="F_8f0fb258-fe1f-4152-84ed-5023b3ebb5fd_1"><ix:footnote id="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.</span></ix:footnote></ix:continuation></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;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;min-width:fit-content;">Fair Value Measured on a Nonrecurring Basis</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the three and nine months ended September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, there were no re-measurements to the fair value of financial assets and liabilities that are measured at fair value on a nonrecurring basis.</span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_9d52c8d9-1893-433d-83f7-44d49567c438" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:BusinessCombinationDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">3.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition of FlexBiosys, Inc.</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d8fe9277-bf19-46b5-bf5b-0b4ce9fc13f5" contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621" name="us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">April 17, 2023</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the Company completed its acquisition of all of the outstanding equity interests in FlexBiosys, pursuant to an Equity Purchase Agreement (&#34;EPA&#34;) with FlexBiosys, TSAP Holdings Inc. (&#34;NJ Seller&#34;), Gayle Tarry and Stanley Tarry, as individuals (collectively with NJ Seller, the &#34;Sellers&#34;), and Stanley Tarry, in his capacity as the representative of the Sellers (the &#34;FlexBiosys Acquisition&#34;).</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">FlexBiosys, which is headquartered in Branchburg, New Jersey, offers expert design and custom manufacturing of single-use bioprocessing products and a comprehensive range of products that include bioprocessing bags, bottles, and tubing assemblies. These products will complement and expand our fluid management portfolio of offerings.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Consideration transferred</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The FlexBiosys Acquisition was accounted for as a purchase of a business under ASC 805, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Business Combinations,&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">and the Company engaged a third-party valuation firm to assist with the valuation of FlexBiosys. Under the terms of the EPA, all outstanding equity interests of FlexBiosys were acquired for consideration with a value totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6a0811c9-fa3a-496c-8079-07d031023029" contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621" name="us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">41.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The FlexBiosys Acquisition was funded through payment of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_76052f1a-f508-4aa4-8ca4-08faa1e1cdf2" contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621" name="us-gaap:PaymentsToAcquireBusinessesGross" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">29.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, which includes $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_61761525-de8e-45b9-9b0d-6adb9172be35" contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222" name="us-gaap:BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">6.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million deposited in escrow for future payments, the issuance of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eab94a88-416c-481f-a623-e62836266267" contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621" name="us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">31,415</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> unregistered shares of the Company's common stock totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3ebce230-f8e7-41d3-a34d-5bbb11a673e9" contextRef="C_8225936e-5d96-4ffa-b252-e28305f513ba" name="us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and contingent consideration with fair value of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f4ffa27a-1aa6-4b26-93f1-c5b7c4aeb74f" contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under the acquisition method of accounting, the assets acquired and liabilities assumed of FlexBiosys were recorded as of the acquisition date, at their respective fair values, and consolidated with those of the Company. The fair value of the net assets acquired is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8284ab49-d708-463e-99e0-dbb219ab5f1a" contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">14.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, the fair value of the intangible assets acquired is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c2dcedbe-ae05-43d0-950d-2db6a4499b96" contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">12.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and the residual goodwill is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_57d30b49-dca0-4763-b4fb-6aee48b72d5d" contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222" name="us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">14.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The estimated consideration and preliminary purchase price information has been prepared using a preliminary valuation. Acquisition-related costs are not included as a component of consideration transferred but are expensed in the periods in which costs are incurred. The Company has incurred $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e2db98f2-744f-4701-9778-0724f7ef06ef" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of transaction and integration costs associated with the FlexBiosys Acquisition from the date of acquisition to </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> with $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f401c487-7975-4f5f-afbe-4114c85eb33d" contextRef="C_698ddc08-a965-415e-a40a-374f09d419d8" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of the transaction and integration costs incurred during the three months ended September 30, 2023. The transaction costs are</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in operating expenses in the consolidated statements of comprehensive income for the three and nine months ended September 30, 2023.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fair Value of Net Assets Acquired</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preliminary allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date. As of September 30, 2023, the purchase accounting for this acquisition had not been finalized. As additional information becomes available, the Company may further revise its preliminary purchase price allocation during the remainder of the measurement period. Besides tax implications of the purchase price allocation, the final allocation may result in changes to other assets and liabilities.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c58193ec-a992-4916-97a8-b4f814e3feb9" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The components and estimated allocation of the purchase price consist of the following (amounts in thousands):</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.016%;"></td>
        <td style="width:1.935%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.049%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_50724ab9-b6b2-4673-ad6f-347b026eb226" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,090</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ba953346-082e-4053-b6a5-8877c45cb6ea" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">683</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_486c1409-4148-4dd0-b92a-9a2fadd4a717" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">667</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prepaid expenses and other current assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ca870ed5-8d9a-42cc-bfb9-870026d88130" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">35</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property and equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_10da3963-85cf-456d-a986-e95ba7482fce" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,034</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease right of use asset</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a331c3d7-0843-48f3-b856-6440f01518f4" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,537</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d02cb0e1-e9ba-4c0d-9ff5-12f8ef86f97a" contextRef="C_fd1105c0-8b60-471b-af3a-ca9ecebc9472" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,530</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Developed technology</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1fb035bb-4639-4bae-9a87-4a6dc9ea75a3" contextRef="C_16fe91ab-7cc9-4f23-ad3b-1c6601fd6a2e" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,860</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademark and tradename</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2f9ab680-ff3f-463a-96b6-fdf6e7800ec2" contextRef="C_0a325822-1e75-48f0-bfe6-37931198fa2a" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-competition agreements</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_98358e60-f16d-41ea-9b18-019b13e6a13a" contextRef="C_c04f5c43-2713-43eb-a0b0-f639e587c213" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">220</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1ea553db-a70a-4490-a1d9-d3a8b1eff5d6" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,321</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other long-term assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f94b7fa2-7cfb-47b9-b339-1fca325d7f20" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts payable</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8d818625-9a0f-4096-95fc-cbf87f0a7ce5" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">136</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3119fa77-c729-4264-a1e9-0da28eebf4f9" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">314</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_446c0b0e-2aa4-4908-a2f3-648be0557452" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability, long-term</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c618d27b-9eee-4aee-b4b4-17275919f9bd" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,498</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair value of net assets acquired</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_390da40c-c83f-476a-bca8-94ed689e0b97" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">41,030</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the third quarter of 2023, the Company recorded an immaterial net working capital adjustment related to the FlexBiosys Acquisition, which is included in goodwill in the table above.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Acquired Goodwill</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The goodwill of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0621f8f8-1f6f-4eac-94fe-b12368006321" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:Goodwill" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">14.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million represents future economic benefits expected to arise from anticipated synergies from the integration of FlexBiosys into the Company. These synergies include operating efficiencies and strategic benefits projected to be achieved as a result of the FlexBiosys Acquisition. </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Substantially all of the goodwill recorded is expected to be deductible for income tax purposes.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Intangible Assets</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><ix:nonNumeric id="F_0e407a77-2e63-48ac-9975-4abe6464a1a3" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table sets forth the components of the identified intangible assets associated with the FlexBiosys Acquisition and their estimated useful lives:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:53.912%;"></td>
        <td style="width:1.821%;"></td>
        <td style="width:19.892%;"></td>
        <td style="width:1.821%;"></td>
        <td style="width:1%;"></td>
        <td style="width:20.554%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Useful life</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Arial;min-width:fit-content;"> </span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c7964932-cf03-4fcf-88e4-661a466bf23e" contextRef="C_09aff2d0-95ff-40b1-a2d7-48262305cd62" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12 years</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_282ce9ea-96c1-49b7-a73e-47d8fc8a288e" contextRef="C_fd1105c0-8b60-471b-af3a-ca9ecebc9472" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,530</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Developed technology</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_da9258b8-caef-4abc-a07b-c5cbd78a9d01" contextRef="C_c164b6cb-58d7-4dd5-b3db-7e5670527c2a" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16 years</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_19b53fc1-d864-445c-911c-32a24bab86d9" contextRef="C_16fe91ab-7cc9-4f23-ad3b-1c6601fd6a2e" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,860</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademark and tradename</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_a6786c40-2829-47ea-ae7c-dee8101737ef" contextRef="C_0a020387-8e25-4e88-a3ee-23a02a143298" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4 years</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_723cd61b-3696-405a-8de7-1b2bf827101e" contextRef="C_05afc143-e2ca-4d16-9905-a872dc0bfdbb" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-competition agreements</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_cc91e902-2827-4ddd-8e9f-fefb900153b3" contextRef="C_300d7e4f-ccf2-4d20-b499-03865151e0ef" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5 years</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_92310cdd-e669-4866-a943-d8f1c2e648b3" contextRef="C_c04f5c43-2713-43eb-a0b0-f639e587c213" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">220</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c437a589-78d6-44bd-81e2-b621af24f72f" contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,640</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div></ix:nonNumeric></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div><ix:nonNumeric id="F_66c671d1-2d0d-46f7-a6f0-f6c3cdc863d8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock" escape="true"><div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">4.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Plan</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As previously disclosed, in July 2023 the Board of Directors authorized the Company's management team to undertake restructuring activities to simplify and streamline our organization and strengthen the overall effectiveness of our operations (the</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#34;Restructuring Plan&#34;). In addition to the initial streamlining and re-balancing efforts contemplated in July, the Company is undertaking further restructuring activities (collectively, the &#34;Restructuring Plan&#34;) which include consolidating a portion of our manufacturing operations between certain U.S. locations, discontinuing the sale of certain product SKUs, and evaluating raw materials and components secured during the 2020-2022 COVID-19 pandemic period (the &#34;COVID-19 Period&#34;) to meet increasing demand during a challenging supply chain environment in the industry. These activities are expected to be substantially completed by the end of 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company recorded pre-tax costs of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4e98553e-2824-4f39-8c81-c7a71089f11f" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_e177add6-2a22-446d-beca-704fdef3f794" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">24.0</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three and nine months ended September 30, 2023, related to the Restructuring Plan and for the full year of 2023 the Company expects to record charges of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6b09a173-a8cd-4054-84c5-99eb6ef276bf" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringCharges" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">26</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, with the remaining costs in the fourth quarter related to remaining severance and employee-related costs. Approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bf9deb4e-5191-4e78-ace5-c97bef94ebc9" contextRef="C_b83b7f79-eb2d-4463-8d73-431f7ee309b4" name="rgen:NoncashinventorywriteOff" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">21</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million will be non-cash, relating primarily to an inventory write-off to adjust inventory to net realizable value and accelerated depreciation on equipment related to the shutdown of manufacturing facilities and production lines, the remaining costs will be cash expenses, primarily related to severance and employee-related costs.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company recorded pre-tax costs of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d4f506a6-3e7f-4cc9-8495-3497877aca38" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_c8dea101-6967-488e-a09f-3d11c8c4cd15" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">24.0</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three and nine months ended September 30, 2023 related to the Restructuring Plan and for the full year of 2023 the Company expects to record charges of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8f1c1480-e990-4fe0-8fa0-2ff08b9e79ef" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringCharges" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">26</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8ecdcbe6-a564-499e-8d10-e65002ce9fd7" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the charges related to restructuring activities by type of cost:</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:27.9%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.74%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.52%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.42%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.84%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three and Nine Months Ended September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Severance &amp; Employee-Related Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Inventory Write-Off</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Accelerated Depreciation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Facility and Other Exit Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1be199f8-bf66-4e26-a652-12a12cf43e4a" contextRef="C_1e720d5e-8b9e-4b94-b885-ee375061b75f" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_681e3013-64c7-4f3d-9ffb-624662dcc1f2" contextRef="C_9ede9dc7-76ee-4a60-8d3d-b7831dd2f586" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,654</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3cbf81e2-69aa-49b1-87c6-c806d9c0d38e" contextRef="C_b09a2afc-265f-4a83-9a3c-a2923ee317ba" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_52470781-f790-40e0-b74e-c24343f1ac83" contextRef="C_aba719ab-7b87-445e-970a-55bd323b25b9" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,185</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ee976d21-bf97-4ab8-9e59-03a073683677" contextRef="C_66ee78d4-1501-41f8-8bad-081591c64446" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_7d732444-84f8-4e01-8b76-851a3045b915" contextRef="C_c75dba94-3d35-43ec-9ed5-9da06bf49a5b" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,788</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2d3c29c3-6d1c-44ad-bdd4-375dab097e6a" contextRef="C_6d9084c7-b2b0-46e7-a373-50c12bf22ac3" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_6c6e6cfd-5dc5-4249-a408-115f164f14bb" contextRef="C_d81a4437-bb80-4be4-ba91-a5e7069c6c46" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">84</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1255a075-c35f-48bd-b6a3-9ab852d315e9" contextRef="C_1e784908-4b51-4615-ac72-38d8f501004d" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_5a84d286-4588-47f7-bc2d-2c457c03c604" contextRef="C_24b3d094-f833-451c-b00d-cc5909ca2b28" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,711</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7cb78a3f-a087-42de-8a25-0d1460d9c901" contextRef="C_8f79b075-c9aa-49d4-bf17-8f21bea61eca" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_6ceb148d-f914-4b37-8e58-730f45ca6ac2" contextRef="C_903609b8-dafb-41ed-89ce-cd3f8437e759" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_14717b85-683d-416a-a183-c010f5f7a37e" contextRef="C_a7514252-0b1a-4c3c-a70e-61af677468b2" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero"><ix:nonFraction id="F_e0ab4181-6161-48b7-a920-caa73791d4a4" contextRef="C_5237d958-4fb9-4dd4-8035-bfd3df21d36c" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4e5e9fa4-7cb0-4f14-b559-989d80123e51" contextRef="C_ead61b81-a0b1-4eaa-89e8-0908dd53afd5" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_98fa3a97-29f6-4134-b6dd-c1c11382aa01" contextRef="C_052089cf-3ef1-473e-a7df-afce31271ab0" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_42149fbe-d2bc-411e-ae51-110cc02ea1a4" contextRef="C_6302ca2f-2211-4af6-82fb-0147adfc8d7b" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero"><ix:nonFraction id="F_d31e6ad8-e467-4ba5-bf21-047518d634ea" contextRef="C_cd0fa4fd-2b07-4bbc-9802-a9683374cc3f" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8c7e9fc3-ed5e-4722-a7a9-b195421d9ee5" contextRef="C_5f45ba16-985f-4eae-a153-2cd561ae1db1" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_f3388b2d-410c-48c4-a917-ead1f6345c3c" contextRef="C_37ad1c18-3905-4747-8acb-2d3e3711075a" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">35</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3e101922-9610-460b-9428-5291a1e615e0" contextRef="C_636b9526-cb85-4246-a319-73b5d8251b39" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_89d404ad-c594-45ac-a736-6f676138fe94" contextRef="C_55c86da6-b271-448c-a888-ad8642d1b0b2" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,142</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_497ad78e-c1e8-4999-97ef-d61015a1d418" contextRef="C_33916c39-0849-428b-9d27-2c65aeb0bff1" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero"><ix:nonFraction id="F_6bde6402-7a21-4700-b76c-19e17f66ceee" contextRef="C_3e2f918e-895b-479a-b917-22184c12541d" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1696ad1b-7803-40a4-b02c-a0d8731c3ee2" contextRef="C_16bec3ca-1b09-48b5-8fc5-64ec7fa403c4" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_cbb0f22a-6848-456c-9fac-7c7ba67486fa" contextRef="C_9131de4c-ce74-47ff-b625-8f5ef9568d7c" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">27</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a57d077d-088f-421d-90fc-4ad6b1f0c8f0" contextRef="C_97c83f2b-2677-4fac-993e-34520451f429" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_181ddbf0-ea8c-4c39-ae2f-572324269bfd" contextRef="C_5bf12700-9d89-42fe-a05e-9eab6a959a44" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">97</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1f8819e5-d182-4861-b7a9-ccd6bb653827" contextRef="C_f12f96af-4ef6-4036-8af1-c9430b5fc52c" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_2aeb00db-7185-471d-b5a5-af18a71cd469" contextRef="C_dcdf82fc-193a-4298-9486-cc4d6a00907a" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,266</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_29e30029-b55e-4591-b55f-289b0baa78c4" contextRef="C_25751d48-53ce-4703-a6df-367c93f42be7" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_a5e98355-d954-481e-b8b1-6fb3ab611ee6" contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,830</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ac219224-aa3e-4fe4-9124-c3f20f2ca8b1" contextRef="C_2c385808-0a00-4606-b941-2ce07f0c914d" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_a9b32029-0796-412e-9212-2ac19bce796c" contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,185</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_351f8b04-4fab-4b9b-a3d8-1188005ab3db" contextRef="C_13680e01-e354-48b1-b0e0-49543c6d0949" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_f0448e17-f47f-4c45-b695-f82dcbf27308" contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,816</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ce75019d-547f-4887-a170-8e724062f609" contextRef="C_6d9b48a4-c59f-4247-89dc-85833b05f4df" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_27ec3715-27f2-42b0-b87b-8464a3b13c4e" contextRef="C_444af4d9-1a4e-406f-8ea2-ce4eecdaaab3" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">181</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_be4a23c8-e705-4d6e-9738-9bed8acbb3f3" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_fdf3c3df-dbfc-4c3c-8fe5-a5f31cd30325" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,012</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Severance and employee-related costs under the Restructuring Plan are associated with actual headcount reductions. Costs incurred include cash severance and non-cash severance, including other termination benefits. Severance and other termination benefit packages are based on established benefit arrangements or local statutory requirements and we recognized the contractual component of these benefits when payment was probable and could be reasonably estimated.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The inventory write-off includes the impact of the Company discontinuing the sale of certain product SKUs and the impact of having proactively secured materials during the COVID-19 Period to meet accelerated demand during a challenging supply chain environment in the industry. Where demand has reduced, finished goods and raw materials, whose value exceeded the projected requirements to be used before reaching their expiration date, were written down to their realizable value. The Restructuring Plan also includes the closing of manufacturing facilities and production lines, which included inventory that could not be repurposed.</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-cash charges for accelerated depreciation were recognized on long-lived assets that were taken out of service before the end of their normal service due to the shutdown of manufacturing facilities and production lines, in which case depreciation estimates were revised to reflect the use of the assets over their shortened useful life.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The restructuring accrual is included in accrued liabilities in the condensed consolidated balance sheet as of September 30, 2023 and the balance is expected to be paid by the end of 2023. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_948311bf-d6bf-4dc9-b67b-130f630e4553" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock" escape="true" continuedAt="F_948311bf-d6bf-4dc9-b67b-130f630e4553_1"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity related to the Restructuring Plan for the nine months ended September 30, 2023 was as follows (amounts in thousands):</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_948311bf-d6bf-4dc9-b67b-130f630e4553_1"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13</span></p>
       <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:32.1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.78%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.84%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Amounts Paid in the Nine Months Ended September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Non-Cash Restructuring Items</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Liability</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Severance &amp; employee-related costs</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_37808adc-81c4-4a3a-bd2a-a87df49b253f" contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,830</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7fc1ca93-7044-4a9e-b021-261042b91f36" contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919" name="us-gaap:PaymentsForRestructuring" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,478</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a675df1d-5ac6-469a-b244-48dc8fca5361" contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919" name="us-gaap:RestructuringReserveSettledWithoutCash2" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">214</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4a04d82b-7d02-4505-8dd1-24cbb8dee026" contextRef="C_5f41dc03-78a6-4cef-9956-f19adad0fb47" name="us-gaap:RestructuringReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">138</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Inventory write-off</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d230a9ef-a133-4253-8d28-eae7c073d255" contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,185</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f11c0999-4d8c-4118-b7ff-891dbab42634" contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b" name="us-gaap:PaymentsForRestructuring" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0f7f4e02-0eb2-4c1d-bbe9-882469164645" contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b" name="us-gaap:RestructuringReserveSettledWithoutCash2" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,185</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3afe3273-1789-4708-aa21-d4e5a5c7ab7e" contextRef="C_707154c4-f9cf-45d0-9ea3-cd1f8b0fc7ac" name="us-gaap:RestructuringReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accelerated depreciation</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_61d5de57-b3bb-4f2b-b839-3fbd30bd810c" contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,816</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_06ff500a-f841-4677-a246-0c0995a8d9fd" contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c" name="us-gaap:PaymentsForRestructuring" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e5fa6839-a173-4db5-ae67-a95cfd3c4a24" contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c" name="us-gaap:RestructuringReserveSettledWithoutCash2" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,816</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_32e23903-865a-4341-bcdd-4c1e5438b651" contextRef="C_d7584a16-3fab-46d8-9bed-bfd144d60bcd" name="us-gaap:RestructuringReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Facility exit and other exit costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5f5a8d75-3a32-4cdd-a238-afbe7b58ab65" contextRef="C_18ab726c-4cde-4a85-a8ea-d39f0739d066" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">181</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_040e5591-0e76-4aa8-a746-1d7e7c195e30" contextRef="C_18ab726c-4cde-4a85-a8ea-d39f0739d066" name="us-gaap:PaymentsForRestructuring" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">171</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eece873e-b39a-4909-bdbc-f6fd351d3927" contextRef="C_18ab726c-4cde-4a85-a8ea-d39f0739d066" name="us-gaap:RestructuringReserveSettledWithoutCash2" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_949e67a3-5db5-4d2a-aed6-4870d400cb68" contextRef="C_adc269c9-6b99-4085-86f1-8d8ded904dec" name="us-gaap:RestructuringReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_947ed04c-b39e-4423-a348-81cd3ae51542" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24,012</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_52e6cba5-6aa4-4070-b5f2-5d0feff4c1fd" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PaymentsForRestructuring" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,649</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2b3ed22b-839a-408c-840a-a5e86da0136d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RestructuringReserveSettledWithoutCash2" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,225</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c44c0ea4-9473-46a0-b4b8-519e619ad174" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:RestructuringReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">138</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:continuation></div></ix:nonNumeric></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_49fabb5f-7560-465c-9002-9d2bf2d96a5d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RevenueFromContractWithCustomerTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">5.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue Recognition</span></div></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Disaggregation of Revenue</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f0980a5a-f593-42a8-94e5-f6423f3f0379" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:DisaggregationOfRevenueTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenues for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three and nine months ended September 30, 2023 and 2022 were as follows:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:30.686%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c4d82d00-1b87-413d-9d4c-02666560e8a5" contextRef="C_bf2625d5-d558-4316-975c-562ba4835ff4" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">141,156</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eff2fcb5-29c9-486b-a52e-52f99223797c" contextRef="C_b45b33b5-979b-4ecb-a5f6-02ae2ceaace4" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,708</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_83a95e21-1977-4eb9-859b-7b54aef24787" contextRef="C_7c8c0df8-aa3f-453b-8083-8b757da047cb" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">482,910</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_42a4a013-ee44-4575-97b6-22470f8c9b66" contextRef="C_a6e126b9-84d4-4ed8-865f-4a752e5c2725" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">614,668</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Royalty and other income</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_efb17cc9-70f9-4685-baee-e8ce36735545" contextRef="C_c79687e8-b4de-404a-84b9-20cbdcf033ac" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">36</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d792b731-e25b-4566-b2c2-c7c43c5541e2" contextRef="C_b2e28058-999d-469a-8802-ed7b964035cd" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">33</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e95eedc4-6c96-4536-ab0f-50246eac8563" contextRef="C_c1477456-7b6e-4f58-88ac-6137ee30faad" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">111</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6df696d3-d2f6-43df-91a0-22fbfdf074c7" contextRef="C_12e9a451-11af-470c-a8dd-46dfa3df6a69" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">106</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b281c1d6-8e13-4d37-9955-15fc8fbe9dc1" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">141,192</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_747d6a15-e454-4f33-9c70-6efd2c4bb122" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,741</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ca9f06c6-5706-4f27-b6b6-7aa0fd18cf07" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">483,021</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e736e78b-340c-4b17-ad4f-e6afaba83334" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">614,774</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">When disaggregating revenue, the Company considered all of the economic factors that may affect its revenues. Because substantially all of its revenues are from bioprocessing customers, there are no differences in the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows from any of its product lines. However, given that the Company&#x2019;s revenues are generated in different geographic regions, regulatory, economic and geopolitical factors within those regions could impact the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows. In addition, a significant portion of the Company&#x2019;s revenue is generated from a small number of customers; therefore, economic factors specific to these customers could impact the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Disaggregated revenue from contracts with customers by geographic region and revenue from significant customers can be found in Note 14, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#x201c;Segment Reporting,&#x201d;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> included in this report.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For more information regarding our product revenue, see Note 6, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#x201c;Revenue Recognition&#x201d; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in Part II, Item 8, &#x201c;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial Statements and Supplementary Data&#x201d; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to our Form 10-K.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contract Balances from Contracts with Customers</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6ea4c26b-e8bc-460f-9e6d-b072a0142ee4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table provides information about receivables and deferred revenue from contracts with customers as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 (amounts in thousands):</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:69.297%;"></td>
        <td style="width:1.004%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.381%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.004%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.312999999999999%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balances from contracts with customers only:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_29e2bb5b-91e6-4889-b59b-998280c8afda" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">106,158</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0831368b-fdb3-41c8-b828-1cef8f61f69d" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">116,247</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred revenue (included in accrued liabilities and<br />&#160;&#160;&#160;other noncurrent liabilities in the condensed consolidated <br />&#160;&#160;&#160;balance sheets)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4c9b4342-9234-4f01-9121-065ee370983e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:DeferredRevenue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,447</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_605178b8-63ae-46e7-b566-2a8e9b595c74" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:DeferredRevenue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,631</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during periods presented relating to:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The beginning deferred revenue balance</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dd9bf550-0c43-495d-8171-c64d26dfbc1c" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ContractWithCustomerLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,999</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9610ad19-42a6-4bc8-855f-509ba291fe7c" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ContractWithCustomerLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,390</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of revenue recognition, billings and cash collections results in the accounts receivable and deferred revenue balances on the Company&#x2019;s condensed consolidated balance sheets.</span></p></ix:nonNumeric></div>
  <div><ix:nonNumeric id="F_bba392ad-f569-4c51-834b-b87386eb963f" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">6.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill and Intangible Assets</span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Goodwill</span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><div style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_93c8eb10-0f24-4f8e-88b0-17a28c2389fe" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfGoodwillTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table represents the change in the carrying value of goodwill for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 (amounts in thousands):</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.016%;"></td>
        <td style="width:1.935%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.049%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_41c3b743-0a23-4147-bc1d-d0160c550d4e" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">855,513</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition of FlexBiosys, Inc.</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4290398a-f2e8-4b4c-aa2d-71bc98cdce2e" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:GoodwillAcquiredDuringPeriod" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,355</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Measurement period adjustment &#x2013; FlexBiosys</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2122f4c6-f7e6-487a-8a4b-456b52aa0d4b" contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8" name="us-gaap:GoodwillPurchaseAccountingAdjustments" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">34</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cumulative translation adjustment</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ee76263e-28a6-4096-98d3-e112ea980a78" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">582</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_43821940-2496-42e3-95a5-736060a73556" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">869,252</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During each of the fourth quarters of 2022, 2021 and 2020, the company completed its annual assessments and concluded that goodwill was not impaired in any of those years. The Company has not identified any &#34;triggering&#34; events which indicate an impairment of goodwill in the three and nine months ended September 30, 2023.</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Intangible Assets</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible assets are reviewed for impairment at least annually. There has been </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f3d20663-673b-4003-b5a1-cccba6eb52c5" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" unitRef="U_USD" scale="6" decimals="-6" format="ixt-sec:numwordsen">no</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> impairment of the Company&#x2019;s intangible assets for the periods presented.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_7353b80b-ed7f-485f-bf85-c89b3c029ea2" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net, consisted of the following at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023:</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.471%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.139999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.139999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.9%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.002%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.681%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br />Carrying<br />Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br />Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net<br />Carrying<br />Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br />Average<br />Useful Life<br />(in years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite-lived intangible assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Technology &#x2013; developed</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_249ead28-c956-4d52-b08f-7e3d7c237d29" contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">200,188</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a628f12f-d40d-4f4f-8d33-e110a7705c11" contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,093</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8fc9055f-bb3d-4865-bcab-6d6ef9412c59" contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">160,095</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c1cda984-28bf-476f-abea-6ab347c04864" contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Patents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1ae1b1bc-ade5-495a-b740-f053c45b0b2b" contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">240</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_137f16ff-d480-442c-98d7-66f580860af4" contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">240</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2049e032-8f84-45bf-b306-d854ec0a9ab3" contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_ce9289e3-72a4-48ed-968c-0c24dbb3008d" contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_da848586-d859-4162-9186-f3ed874c4a48" contextRef="C_efe12117-250c-4685-8a47-747fda96c561" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">255,113</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7ee29cb0-88a8-48ee-8c03-c4c249c4b4b1" contextRef="C_efe12117-250c-4685-8a47-747fda96c561" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">78,929</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7313a81d-d934-4d6b-b114-2d55f6c873fb" contextRef="C_efe12117-250c-4685-8a47-747fda96c561" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">176,184</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1c5f0f01-891a-42b7-b1d3-9c2953ab9196" contextRef="C_efe12117-250c-4685-8a47-747fda96c561" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bdd4ec9d-e79f-49d5-81c8-8f344ce1f940" contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,709</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_44ac8741-c398-40c3-86b7-339b2ca7df90" contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,653</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b2ccb861-eafe-4289-8a0c-75d0d57e3b27" contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,056</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_18010d59-45f7-4fe1-87e4-6b31b52bb98a" contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangibles</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_818e90ab-099e-43ef-b93d-f4046f7a56a0" contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,026</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c06393bb-68e4-4356-a7b6-ba101a926ec2" contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,332</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d208d1e4-18cc-4f2d-9c36-455c4558c860" contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">694</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8f4d2e1e-370c-468b-8fa6-954ade0c55fc" contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total finite-lived intangible assets</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2d6f3569-d88a-4ebd-a58d-dc1d9cf0b78d" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">466,276</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2d1b5fcf-36f7-4a39-8d49-cf2e6512c6f4" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">123,247</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_803a0ee3-9d96-4c28-85e3-e0dcb20319b4" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,029</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2e9276ba-8f25-4eac-add3-1f6098662f4d" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible asset:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ae3cc3b3-1d22-4ca8-811d-a7337d4060ff" contextRef="C_51d37a73-1d8b-4c15-9836-7661a6ef0182" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_011594bc-052e-47a2-8777-3afc4a7b457e" contextRef="C_51d37a73-1d8b-4c15-9836-7661a6ef0182" name="rgen:IndefiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total intangible assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6ad8a66d-a240-43d3-ab08-914c9ed1f562" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">466,976</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_24ad6823-2d04-430f-9e5f-e3e89bb1c7d6" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">123,247</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_657584ef-3200-4696-b491-1d6b638f8063" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,729</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net, consisted of the following at December 31, 2022:</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.735%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.048%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.048%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.054%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.088000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br />Carrying<br />Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br />Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net<br />Carrying<br />Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br />Average<br />Useful Life<br />(in years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite-lived intangible assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Technology &#x2013; developed</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_24041cfd-8c80-434c-bb27-c8c7f211c061" contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">190,463</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_00a1e878-937f-498f-a4f8-d8a776a4e778" contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,992</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c3941d7a-64c8-4eb6-979c-42b93312e817" contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">159,471</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d399485d-0179-4bad-8203-7d510092ed68" contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Patents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cd6c9865-c166-4974-8d7a-80afba63f0ce" contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">240</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b3d3477f-6e5a-4a6b-a01c-cbae7c443830" contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">240</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7c02c955-d5fb-441b-8e50-9f7392eccbce" contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fa18f1de-d88c-4936-acea-4488d491ae12" contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_762380a2-53a7-4461-9f93-7724fcb66741" contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">252,934</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bd76ee0d-22ba-475b-94b6-17bdb99db191" contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">66,559</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fd03b416-0773-40d5-974c-87fed491d493" contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">186,375</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_9a66a6d1-cecc-45d5-8653-eb62e0bdbaa7" contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fdb39b35-f6d9-4665-b25f-2a5d9bd0ad12" contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,682</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8702b7ec-c565-413a-a3d3-4a849b237222" contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,319</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f7cfd6f3-3421-4488-b19b-f992cb84bbd0" contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,363</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d69de033-2adb-462f-ad82-50d7933311fb" contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangibles</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7c773cc0-63f1-4013-9e7d-c04130833c79" contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,811</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b4d881a5-b620-42d4-bec3-857a8513f06b" contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,044</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_144173b7-f509-44b5-817a-3d0e53c11436" contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">767</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_e823346f-f13a-4f03-a077-ea62206603c2" contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total finite-lived intangible assets</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a1a1cf41-d452-4685-a3c4-0e19bdb0d792" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:FiniteLivedIntangibleAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">454,130</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7cd12f0b-5ffa-4940-8789-f89d262ce37d" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">101,154</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_236f74c8-0ab2-4ed5-a1d4-93f12dd9b35f" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">352,976</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_17e0e420-ef20-4fdd-b752-4b74f27947d0" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible asset:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9e9d0bf1-7f97-4085-ac67-d3df9d1f5dce" contextRef="C_4d2c8145-0800-447b-8bcb-bcadb2866c1a" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_16cd23f4-ba96-4e36-91e5-1469c0e63caa" contextRef="C_4d2c8145-0800-447b-8bcb-bcadb2866c1a" name="rgen:IndefiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total intangible assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_478e085b-3f8e-4b0b-82e6-0226b3ea643a" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">454,830</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_37caf8af-a503-4c9d-b67f-07ba0134fac3" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">101,154</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2820a450-20f9-4bdb-878b-b918ff122bf3" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">353,676</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization expense for finite-lived intangible assets was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e97b481d-7a28-4e8c-896a-356edaf81fbf" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:AmortizationOfIntangibleAssets" 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a732ed37-55e5-4290-8ba5-3ed3f7a77fdc" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:AmortizationOfIntangibleAssets" 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the three months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, and $</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_32dc0d3e-c3e4-437e-ba32-06f3c6f19d33" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:AmortizationOfIntangibleAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">22.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_079eecbd-75a8-4800-8996-ab93cd6eb070" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:AmortizationOfIntangibleAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">19.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the nine months ended September 30,</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_a07b0ca1-b49e-4248-bb52-4ef0b37ca141" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" escape="true" continuedAt="F_a07b0ca1-b49e-4248-bb52-4ef0b37ca141_1"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023, the Company expects to record the following amortization expense in future periods (amounts in thousands): </span></ix:nonNumeric></span><span style=""></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_a07b0ca1-b49e-4248-bb52-4ef0b37ca141_1"><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.288%;"></td>
        <td style="width:1.941%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.771%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">For the Years Ended December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Expense</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 (remaining three months)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0db4b008-bfa9-416b-985d-1799adcd0d30" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,504</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2024</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_68b816d8-c772-4d64-aada-28f92199a85e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,558</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2025</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d0cc7e4a-b004-44a1-97f8-50056a5a9306" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,220</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2026</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_96d10115-36d0-47e8-9d78-665c9e3bc9b2" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,192</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2027</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_30b7ad75-9873-44a8-a1e8-1ce7215e2d2c" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,159</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2028 and thereafter</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e0e9c68d-c8b2-4d6a-adca-e92c28871feb" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">218,396</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_aa149ccf-6cb9-4c96-ba8e-a1848b421984" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">343,029</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:continuation></div></ix:nonNumeric></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_4afc1eba-9056-40a4-85b3-a5b1687d57ba" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SupplementalBalanceSheetDisclosuresTextBlock" escape="true"><div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">7.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Consolidated Balance Sheet Detail</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0da27623-f561-4c85-a9db-98b03a334042" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;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;min-width:fit-content;">Inventories, net</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories, net consists of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:71.125%;"></td>
        <td style="width:1.722%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.715%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.722%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.715%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Raw materials</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_79bfd3be-85aa-4028-95d0-1810cc896486" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:InventoryRawMaterialsNetOfReserves" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">128,894</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cdebbfdf-0bd8-4bf6-b16e-fe72389f565a" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:InventoryRawMaterialsNetOfReserves" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">149,438</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Work-in-process</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2ed93eaa-890b-466e-87bc-ce02851092d6" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:InventoryWorkInProcessNetOfReserves" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,630</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b4d4271a-5426-46d2-b4a8-a742f20872ad" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:InventoryWorkInProcessNetOfReserves" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,183</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finished products</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_40fec58b-9dd8-4816-b434-fbd7047bccb4" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:InventoryFinishedGoodsNetOfReserves" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">76,848</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4bc60585-9c28-4db4-b060-14378609b49b" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:InventoryFinishedGoodsNetOfReserves" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">82,656</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total inventories, net</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e3581974-c605-4e65-b171-b27f53be0f24" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">211,372</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_64ea8fb8-0c6e-4cea-a5ad-49e9f4bfbed7" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">238,277</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8cb5ca6b-13ac-4762-a67c-9c634165165b" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:PropertyPlantAndEquipmentTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Property, Plant and Equipment</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment consist of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:70.077%;"></td>
        <td style="width:1.533%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.45%;"></td>
        <td style="width:1%;"></td>
        <td style="width:3.491%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.45%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Land</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a5c876fb-db9b-48b9-9ef3-ca12f77ec07d" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:Land" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">950</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_90d0e4f2-f912-45fa-8c0f-43aea9034919" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:Land" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,003</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Buildings</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c334c811-81db-47f4-904b-aecc56f5dfd5" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:BuildingsAndImprovementsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,637</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3ab60f2e-1cb6-48e2-9efb-c2b949ff7cda" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:BuildingsAndImprovementsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,599</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leasehold improvements</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_37633973-6a40-4b95-ae2f-335d869563b2" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:LeaseholdImprovementsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">124,925</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b88a33e9-030e-4ac7-b6df-11d541f9fbf4" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:LeaseholdImprovementsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">115,672</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Equipment</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6c78afc7-7588-4981-b562-ec491b8b15cd" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:MachineryAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">111,625</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_efc428ca-0afe-4518-8e59-d4d26d170045" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:MachineryAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">94,613</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Furniture, fixtures and office equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_26d5da7d-8618-4454-a94d-54b8b0e92ff4" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:FurnitureAndFixturesGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,786</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ca59d3c7-c75e-4ade-8fd7-10cff494b7cc" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:FurnitureAndFixturesGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,307</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Computer hardware and software</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a87cf5e1-7c2b-4b3e-b05a-71f8a18c9390" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:CapitalizedComputerSoftwareGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">35,359</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9554871b-4940-4aa7-a246-a6fbfab7d22f" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:CapitalizedComputerSoftwareGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,813</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Construction in progress</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a029114b-dae9-4c1e-889d-037d1085f15c" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ConstructionInProgressGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">37,679</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_071a34a4-d315-4119-8e49-93bc6fb7b9ac" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ConstructionInProgressGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,553</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0290e76d-bb0d-4a57-9f6d-51b378ff778e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PropertyPlantAndEquipmentOther" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">410</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5950c0f1-e650-4c8e-82de-0acbce0944c0" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PropertyPlantAndEquipmentOther" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">420</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total property, plant and equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d1171e5e-c03a-4b3f-9dae-b410052ebb23" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">321,371</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_234d3a88-0fae-4625-9306-682dd85656a5" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">282,980</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Less &#x2013; Accumulated depreciation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2a0d228f-e8e0-44bb-91d3-9b1decf9dfa2" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">119,753</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e39ad7c2-12e4-455b-bbbc-bc02a00e9f76" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">92,307</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total property, plant and equipment, net</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_13b35fd5-c233-43a9-933f-0510bd1e8aea" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">201,618</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_87421c9b-3b41-4140-a268-bfcbf4ea8187" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">190,673</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1064e469-a1a6-4c64-8dd8-34153f0e5995" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" escape="true"><p style="margin-left:3.333%;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-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Accrued Liabilities</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities consist of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:62.175%;"></td>
        <td style="width:12.815%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.754000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.502%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.754000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Employee compensation</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_20a85909-5943-4d6c-aa9c-4cc535e19441" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,727</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b8f42d77-9b7a-494b-95b8-adaa48c45612" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">33,522</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred revenue</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_066d72d2-5e5c-46ad-86b0-3c5c5948188e" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:DeferredRevenueCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,879</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8f8e492d-e2e8-4b5f-a0fe-e3112f6d4b00" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:DeferredRevenueCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,283</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes payable</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_859eab7e-073e-4df4-a4d5-75c9fdea4966" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccruedIncomeTaxesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,446</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6118e9b4-97e4-4c87-96e7-a1ed5bfafc52" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccruedIncomeTaxesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,459</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0fe6b85c-9ced-4dff-b286-bc6b9716986a" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:OtherAccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,491</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2fe88682-e227-4331-8669-9a40e37d5870" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:OtherAccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,856</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total accrued liabilities</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7b603ba7-6ac6-4388-be03-08be9617669c" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:AccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">42,543</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_09aeee77-0a93-439c-aa53-703d056c3ced" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:AccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">71,120</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div></ix:nonNumeric></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_4e2c69ff-59a6-4562-8ad8-142d0f18e1be" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:LongTermDebtTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">8.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Convertible Senior Notes </span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">0.375% Convertible Senior Notes due 2024</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On July 19, 2019, the Company issued $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_66731a6f-7521-45c1-8009-2d3c4da9269e" contextRef="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5" name="us-gaap:DebtInstrumentFaceAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">287.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal pursuant to the 2019 Notes, which includes the underwriters&#x2019; exercise in full of an option to purchase an additional $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c448e7a5-e669-498d-9791-10b765f4f71f" contextRef="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5" name="rgen:OptionToPurchaseAdditionalDebtFaceAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">37.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal amount of 2019 Notes (the &#x201c;Notes Offering&#x201d;). The net proceeds of the Notes Offering, after deducting underwriting discounts and commissions and other related offering expenses payable by the Company, were approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_83f239a3-5522-4861-b06b-a569e49d8b72" contextRef="C_74b69daa-9fb8-4fbb-9dbf-2e1bb9c47c30" name="us-gaap:ProceedsFromConvertibleDebt" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">278.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The 2019 Notes are senior, unsecured obligations of the Company, and bear interest at a rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c74d3766-1dbe-4e6e-b232-cccd75007fec" contextRef="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="5" format="ixt:num-dot-decimal">0.375</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per year. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_cf930cba-101a-4ffd-ba32-678dd8d44ab1" contextRef="C_bad47599-6652-49f6-bc88-bd914056710b" name="us-gaap:DebtInstrumentInterestRateTerms"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020.</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> The 2019 Notes will mature on </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fc780286-c19a-498b-a638-5a1b8b91c720" contextRef="C_bad47599-6652-49f6-bc88-bd914056710b" name="us-gaap:DebtInstrumentMaturityDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">July 15, 2024</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, unless earlier repurchased or converted in accordance with their terms.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the third quarter of 2023, the closing price of the Company&#x2019;s common stock exceeded </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_417aab10-f617-4361-86b6-e83aa2ea1e51" contextRef="C_bad47599-6652-49f6-bc88-bd914056710b" name="us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">130</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the conversion price of the 2019 Notes for more than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e222988e-2de6-4ead-9059-226f18fb51c8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:DebtInstrumentConvertibleThresholdTradingDays" unitRef="U_Days" decimals="0" format="ixt:num-dot-decimal">20</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> trading days of the last </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4946326e-8173-49d0-b4fe-3f4959289b99" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" unitRef="U_Days" decimals="0" format="ixt:num-dot-decimal">30</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> consecutive trading days of the quarter. As a result, the 2019 Notes are convertible at the option of the holders of the 2019 Notes during the fourth quarter of 2023, the quarter immediately following the quarter when the conditions are met, as stated in the terms of the 2019 Notes. These conditions have been met each quarter since the third quarter of 2020. As a result, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a7d60c54-86fa-4d26-9e87-55e9416cf317" contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d" name="rgen:DebtInstrumentConvertibleIntoEquity" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal amount of the 2019 Notes have been requested for conversion by the note holders since the issuance of the 2019 Notes and all conversions have settled as of September 30, 2023. The conversions resulted in the issuance of a nominal number of shares of the Company&#x2019;s common stock to the note holders. Because the 2019 Notes mature within one year of the report date, the Company classifies the carrying value of the 2019 Notes as current liabilities on the Company&#x2019;s condensed consolidated balance sheets at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d9d44e34-a799-4949-8ac2-c55bb1611796" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ConvertibleDebtTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The net carrying value of the liability component of the 2019 Notes is as follows:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:67.161%;"></td>
        <td style="width:1.622%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.797%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.622%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.797%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,<br />2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,<br />2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.375% Convertible Senior Notes due 2024:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Principal amount</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_70ec66ff-9c4d-41ab-9083-b50660c470ab" contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">287,437</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_279e99e1-1526-4001-83a2-91f8616066a2" contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">287,470</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unamortized debt issuance costs</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c0ce1200-ff79-4218-9e16-d4b94c0b0d9e" contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d" name="us-gaap:DeferredFinanceCostsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,481</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_266a7b5c-3290-4843-a359-a6d7d9fc732c" contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3" name="us-gaap:DeferredFinanceCostsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,855</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Net carrying amount</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_255e545b-2746-4d23-abee-fdcfb928417b" contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d" name="us-gaap:ConvertibleNotesPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">285,956</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_205542ec-9b3f-4563-a598-9da641e634b1" contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3" name="us-gaap:ConvertibleNotesPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">284,615</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_dfa2fee7-9003-4d3c-a9c8-3c19b3ee369a" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:ScheduleOfConvertiableNoteInterestExpense" escape="true"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table sets forth total interest expense recognized related to the 2019 Notes:</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.908%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.427%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.658%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.427%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.658%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contractual interest expense</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_44878841-73f0-4c7f-abad-89340017dd1c" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:InterestExpenseDebtExcludingAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">269</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_031f629c-356e-49dd-81de-daf97a39f4a7" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:InterestExpenseDebtExcludingAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">270</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7449aa6d-7f98-4990-820b-b8ff4dc95aec" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:InterestExpenseDebtExcludingAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">808</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bd02c077-ff49-4f64-b442-f50e338d180d" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:InterestExpenseDebtExcludingAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">809</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4c45f0dc-6a7f-4bb4-b6e8-07e07cf1f7ce" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:AmortizationOfFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">459</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_08c64ed5-14b5-4c76-b708-73fe0a6814c7" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:AmortizationOfFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">455</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a2a69b64-a9bd-4459-b05c-72b2e5e5e4eb" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:AmortizationOfFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,373</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5531d23b-aaa2-45e6-b782-f74394856ac2" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:AmortizationOfFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,360</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d4059969-778f-4d2b-8615-f00292f0a1a3" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:InterestExpenseDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">728</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3ce7f971-ee07-4d18-82ba-c623005786f3" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:InterestExpenseDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">725</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0aed0973-e0d6-4f56-aae1-c5e4ff9ae1be" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:InterestExpenseDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,181</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5c41f78b-bce7-4a07-9693-089b4bfebfeb" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:InterestExpenseDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,169</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effective interest rate of the liability component</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b885315d-5bd8-4f63-9868-dbb970b73e66" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_39d98e38-ae6f-4c05-b3fd-e9c5800f95f9" contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d13ae6bf-e4f8-44af-a39b-da8f44dabaca" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5e5e4732-e702-4b43-b32d-5d949c92d9d9" contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2023 and December 31, 2022, the carrying value of the 2019 Notes was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9bf9a5cb-4878-4071-913b-1d4583f6aeb8" contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">286.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_02ff33f1-8120-44b5-8083-78ed1f0767e5" contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">284.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, net of unamortized discount, and the fair value of the 2019 Notes was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d8b06ddc-ab53-41b4-b15f-c92350fb0221" contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d" name="us-gaap:LongTermDebtFairValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">405.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ef7cf9ca-0dd6-43a7-a8ec-0b164ccaa5f5" contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3" name="us-gaap:LongTermDebtFairValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">452.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The fair value of the 2019 Notes was determined based on the most recent trade activity of the 2019 Notes at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p></ix:nonNumeric></div>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div><ix:nonNumeric id="F_c468044c-6b0e-4b16-852c-a0f9cf5753cd" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">9.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stockholders&#x2019; Equity </span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Stock Option and Incentive Plans</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under the Company&#x2019;s current 2018 Stock Option and Incentive Plan (the &#x201c;2018 Plan&#x201d;), the number of shares of the Company&#x2019;s common stock that were reserved and available for issuance is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ea470793-6366-413f-b512-2d8d695cb6e2" contextRef="C_eb79228f-93fc-480b-83ba-2bc57423f132" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">2,778,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">plus the number of shares of common stock that were available for issuance under the Company&#x2019;s previous equity plans. The shares of common stock underlying any awards under the 2018 Plan and previous equity plans (together, the &#x201c;Plans&#x201d;) that are forfeited, canceled or otherwise terminated (other than by</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">exercise) </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">shall be added back to the shares of stock available for issuance under the 2018 Plan. At September 30, 2023, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_41b158f9-cc4d-41a5-873a-e4d13d933620" contextRef="C_3d1ad89d-d8d1-4cf9-ab80-18bb03f83d45" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">1,704,118</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares were available for future grants under the 2018 Plan.</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Stock Issued for Earnout Payment</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In May 2023, the Company issued </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_74977760-647a-441d-be3e-a63ff7cc2b08" contextRef="C_7138c14d-581b-4fe8-a592-dfc0496070f4" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">42,621</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of its common stock to former securityholders of Avitide to satisfy the contingent consideration obligation established under the Agreement and Plan of Merger and Reorganization (the &#34;Avitide Agreement&#34;) which the Company entered into as part of the acquisition of Avitide in September 2021. See Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Acquisitions&#34;, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in Part II, Item 8 </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Financial Statements and Supplemental Data&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to our Form 10-K, for additional information on the acquisition of Avitide and the contingent consideration. The shares represent </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7b0bf0a8-6372-44dd-9bea-77ffe98a850d" contextRef="C_7138c14d-581b-4fe8-a592-dfc0496070f4" name="rgen:EarnoutConsiderationEarned" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">50</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the earnout consideration earned in the First Earnout Year (as defined in the Avitide Agreement).</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Stock-Based Compensation</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_97bd9308-e58e-4880-baf7-578d651c0c8e" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table presents stock-based compensation expense in the Company&#x2019;s condensed consolidated statements of comprehensive income:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:55.172%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8a84bc8f-19d8-4c51-8ec7-db60f143cd6f" contextRef="C_1e784908-4b51-4615-ac72-38d8f501004d" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">393</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b22e7a2c-bbe6-48b0-8b27-7ebdea0eeee1" contextRef="C_46cab3c6-b18a-4413-a555-92293dfea9bd" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">610</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9ddc4e48-9238-4c9f-ac77-05cbea58f200" contextRef="C_24b3d094-f833-451c-b00d-cc5909ca2b28" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,506</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3b6fd17b-1df8-4eba-bc14-eabdf3c8ec9d" contextRef="C_cffd0f39-00b9-4846-8a44-558f550e0943" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,847</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_616b4819-a10d-40fd-88ac-9dd6d7918717" contextRef="C_5f45ba16-985f-4eae-a153-2cd561ae1db1" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_072a7012-2a8f-4902-a046-09bb8968f82c" contextRef="C_c7cc198a-634c-4a85-9821-8f902377f89e" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">534</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_64ff005d-98a9-4e89-993d-17b259f62907" contextRef="C_37ad1c18-3905-4747-8acb-2d3e3711075a" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,095</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b7562b6b-ac08-4707-8006-7533d01d426c" contextRef="C_a588eb85-a8e0-422a-9c8a-0205b7e8ee16" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,955</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_db6a2f7d-03fd-4147-9f34-d6b69a23ff6a" contextRef="C_f12f96af-4ef6-4036-8af1-c9430b5fc52c" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,280</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3e8b2708-e238-4f64-8574-bcaefabdb36e" contextRef="C_703f7c33-5d64-43ae-99f7-80349032df8f" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,010</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_805e7cfc-6f8a-4877-a870-6c26964ae254" contextRef="C_dcdf82fc-193a-4298-9486-cc4d6a00907a" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,509</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_75ecd8fc-d761-48cd-a013-d8e062117d63" contextRef="C_3012615e-9bbf-4cb7-85d5-f097eb6fec6c" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,252</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total stock-based compensation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_91ca47bb-d7d1-41b3-9359-4ec06884187f" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,373</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_961cf7dd-c07a-4dd5-b481-78dfcf1483a7" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,154</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6f9a0c40-6ea1-4551-b6e7-dd35b48f5d03" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,110</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_98c0dd2c-3d04-42e3-b094-a7b19904b9f4" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,054</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock Options</span></p><div style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f01c9e49-41e8-411b-bb6e-1fcc383aee27" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" escape="true" continuedAt="F_f01c9e49-41e8-411b-bb6e-1fcc383aee27_1"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information regarding option activity for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 under the Plans is summarized below:</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.18%;"></td>
        <td style="width:1.001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.674%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.221%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.893%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.674%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.221%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.133%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br />average<br />exercise<br />price</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted-<br />Average<br />Remaining<br />Contractual<br />Term<br />(in Years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Aggregate<br />Intrinsic<br />Value<br />(in Thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options outstanding at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dd314713-9966-4b77-a5f0-c870dd810fe5" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">609,965</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_01976b85-4c34-4a14-ab99-cc55f404cb2f" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">71.74</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Granted</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ea3d1d68-2eb0-4719-bffd-6b65e2b0e4f6" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">66,069</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a2f79612-b7c7-4729-a177-da481e86e53f" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">173.08</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exercised</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_494440b9-cdea-4f6f-bc7f-5ac64cb377a7" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">22,872</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1322af3e-9b8f-4308-93db-da95a6ed183d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">15.52</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeited/expired/cancelled</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ba42825f-444e-4c2d-81b7-864951559269" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">2,000</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_720f1f55-a919-4474-b69b-15fc303d0c3d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">199.71</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options outstanding at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_db9e946e-2612-42a1-ad01-c220e027e53a" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">651,162</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_72dd487c-d4cd-4d2e-8999-d349310f1c2c" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">83.60</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options exercisable at September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_87919997-0a02-4e0a-8d1b-a7e8628fba0a" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">371,782</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_80c1e2fe-c7b4-4fbd-a6d6-4e45c3b5fd15" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">61.46</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested and expected to vest at September 30, 2023</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4e9c865f-4ce4-44b0-bdb7-06e678ace694" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">637,673</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a46dc2a8-9f36-49cc-827c-8174fcf1ebd0" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">83.18</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_aaa0d4bc-a19b-4a85-b6c9-d369b39dcc1c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5.73</span></ix:nonNumeric></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ee662a64-ac6c-4919-bbb2-8056eabf38e2" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">53,173</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:3pt;border-bottom:0.75pt solid;margin-right:83.333%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.635986778229898%;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_7178268a-013b-40cf-b4cd-19d1043e506d" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested options as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bef5456e-4ca8-417b-b4cd-3991caed8b0c" contextRef="C_fdc9d1ae-9cae-4a17-92ec-6a882b3569bd" name="rgen:PercentageOfSharesSubjectToForfeiture" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0ed9852f-ec09-449e-a241-276c22f606dd" contextRef="C_41ef690f-1d2f-4809-b6d9-da38ed8a3f7b" name="rgen:PercentageOfSharesSubjectToForfeiture" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees.</span></ix:footnote><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><ix:continuation id="F_f01c9e49-41e8-411b-bb6e-1fcc383aee27_1"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></ix:continuation></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aggregate intrinsic value in the table above represents the total pre-tax intrinsic value (the difference between the closing price of the common stock on September 30, 2023, the last business day of the third quarter of 2023, of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b11d8d04-f11d-47cb-84a6-4076e7a55259" contextRef="C_c7dac913-7e20-4be0-921c-3b4999696498" name="us-gaap:SharePrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">159.01</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share and the exercise price of each in-the-money option) that would have been received by the option holders had all option holders exercised their options on September 30, 2023. The aggregate intrinsic value of stock options exercised during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_79d61934-9038-4b10-bb63-bc9df14411e3" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_535559df-87d2-487b-8cc3-8790ebb44e37" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">9.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The weighted average grant date fair value of options granted during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_784e4450-5c75-4a05-8334-4c74d8a571e0" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">85.70</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9c1e502c-6830-442b-b8fa-72b11d68cc36" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">76.64</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock Units</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The fair value of stock units is calculated using the closing price of the Company&#x2019;s common stock on the date of grant. The Company recognizes expense on awards with service-based vesting over the employee&#x2019;s requisite service period on a straight-line basis. The Company recognizes expense on performance-based awards over the vesting period based on the probability that the performance metrics will be achieved. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d8ebbb63-6f11-4bed-bb7f-3d10fc6e12ec" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" escape="true" continuedAt="F_d8ebbb63-6f11-4bed-bb7f-3d10fc6e12ec_1"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 under the Plans is summarized below:</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_d8ebbb63-6f11-4bed-bb7f-3d10fc6e12ec_1"><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:65.96%;"></td>
        <td style="width:1.121%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.129999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.601%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.59%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.601%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted Average<br />Grant Date<br />Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unvested at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a4fd6296-2072-4f8c-9c6e-1c8eda36c1a1" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">531,034</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d89d4c75-38bd-47ff-b4cf-7895fd4d5bed" contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">142.57</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awarded</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_76bb99b6-d590-478e-a717-34c20630adfb" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">175,475</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_324afc89-0dcf-48f4-92dd-2fcc91d077cf" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">174.86</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_90535ef5-5c66-41ee-883b-8b87b4e6a9b8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">173,714</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_14524553-59d3-4740-b573-4e355b050521" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">118.70</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeited/cancelled</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6a4b76e3-64d6-403d-a881-f3bfed45f425" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">53,920</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6e289232-82f3-43bd-8559-3a581fac7ffc" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">179.53</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unvested at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_df4711b2-0359-4621-a124-a882523d84bc" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">478,875</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cb5543ce-8877-4920-83a2-93dddb08cada" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">188.41</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested and expected to vest at September 30, 2023</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f53a333c-a682-4afd-b31d-d702c78d1e53" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">411,646</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bb66cba6-c118-4e68-a054-0a99c491f048" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">153.79</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:6.667%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.571084182443509%;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_f64d3bfc-587c-4f24-8797-c9208aa8da44" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested stock units as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_db2b779b-d697-4920-b719-b2977b78479e" contextRef="C_3724e612-61bd-430a-b202-7aa0f948df3b" name="rgen:PercentageOfSharesSubjectToForfeiture" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3a6ab5b9-b323-47cc-b3b0-8bf04ef58bd4" contextRef="C_1291ff2c-3a6f-4b4b-a65a-cbd1f72f77d8" name="rgen:PercentageOfSharesSubjectToForfeiture" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees. </span></ix:footnote></div></div></ix:continuation></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aggregate intrinsic value of stock units vested during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_81fdcd2c-9e2a-43b3-8977-5c69a62ddb24" contextRef="C_ab2e2224-f373-42d1-bd2d-9ccfb549c73e" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">32.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bd0485e2-8872-429a-999c-7a5ada5eee29" contextRef="C_9fae5b8e-0af7-4511-980c-90356dd429ea" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">40.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The weighted average grant date fair value of stock units granted during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_794926da-07f3-4adb-8b3f-07784b996b23" contextRef="C_ab2e2224-f373-42d1-bd2d-9ccfb549c73e" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">174.86</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_001e156b-38ef-41d9-8513-994cb93862cb" contextRef="C_9fae5b8e-0af7-4511-980c-90356dd429ea" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">191.55</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023, there was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_51c3e344-516c-40f5-95e0-5528801d12e2" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">66.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of total unrecognized compensation cost related to unvested share-based awards. This cost is expected to be recognized over a weighted average remaining requisite service period of </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_34ef153d-896f-4d7d-b011-15abef98edde" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2.88</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> years. The Company expects </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_36b626e3-935e-487e-a484-83056980a354" contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681" name="rgen:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">2,156,681</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> unvested options and stock units to vest over the next </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_035dbb6c-4365-4920-a34c-1b2670bbea15" contextRef="C_ddede146-e39d-42e2-811e-3d451abddc6f" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">five years</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_3e4531a4-0c64-4f52-95d8-b0b5778b9969" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:10pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">10.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Commitments and Contingencies </span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Collaboration Agreements</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company licenses certain technologies that are, or may be, incorporated into its technology under several agreements and also has entered into several clinical research agreements that require the Company to fund certain research projects. Generally, the license agreements require the Company to pay annual maintenance fees and royalties on product sales once a product has been established using the technologies. Research and development expenses associated with license agreements were immaterial amounts for the three and nine months ended September 30, 2023 and 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In June 2018, the Company secured an agreement with Navigo Proteins GmbH (&#x201c;Navigo&#x201d;) for the exclusive co-development of multiple affinity ligands for which the Company holds commercialization rights. The Company is manufacturing and supplying the first of these ligands, NGL-Impact</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, exclusively to Purolite Life Sciences, an Ecolab Inc. company (&#x201c;Purolite&#x201d;), who is pairing the Company&#x2019;s high-performance ligand with Purolite&#x2019;s agarose jetting base bead technology used in their Jetted A50 Protein A resin product. The Company also signed a long-term supply agreement with Purolite for NGL-Impact and other potential additional affinity ligands that may advance from the Company&#x2019;s Navigo collaboration. In September 2020, the Company and Navigo successfully completed co-development of an affinity ligand targeting the SARS-CoV-2 spike protein, to be utilized in the purification of vaccines for the COVID-19 pandemic, including emerging variants of the SARS-CoV-2 coronavirus. The Company has proceeded with scaling up and manufacturing this ligand and the development and validation of the related affinity chromatography resin, which is marketed by the Company. In September 2021, the Company and Navigo successfully completed co-development of a novel affinity ligand that addresses aggregation issues associated with pH sensitive antibodies and Fc-fusion proteins. The Company is manufacturing and supplying this ligand, NGL-Impact</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> HipH, to Purolite. The Navigo and Purolite agreements are supportive of the Company&#x2019;s strategy to secure and reinforce the Company&#x2019;s proteins business. The Company made royalty payments to Navigo of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d40d0c04-c4e4-4277-96e0-ef8b25e5ad2e" contextRef="C_03f1dedf-5b09-4e09-9c8e-1f6615c13430" name="us-gaap:RoyaltyExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_05bae7dc-97c8-474a-b0e1-d52303c05481" contextRef="C_cda1fc68-dcf5-4d3d-b5f4-901572acd667" name="us-gaap:RoyaltyExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three months ended</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, and payments of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c1fb0d4c-dc90-4c64-b9b1-d222d42a2bc2" contextRef="C_26cc2f4e-5b40-4e20-aa2d-001c3d824799" name="us-gaap:RoyaltyExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f4ec7edb-0782-426f-8850-2a57f4ea1e20" contextRef="C_823f0961-1e36-4654-ac48-d7ad7ec1e6cb" name="us-gaap:RoyaltyExpense" 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 and 2022, respectively.</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Legal Proceedings</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">From time to time, in the normal course of its operations, the Company is subject to litigation matters and claims relating to employee relations, business practices and patent infringement. Litigation can be expensive and disruptive to normal business operations. Moreover, the results of complex legal proceedings are difficult to predict, and the Company's view of these matters may change in the future as the litigation and events related thereto unfold. The Company expenses legal fees as incurred. The Company records a provision for contingent losses when it is both probably that a liability has been incurred and the amount of the loss can be reasonably estimated. An unfavorable outcome to any legal matter, if material, could have an adverse effect on the Company's operations or its financial results.</span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_e537f1b1-f1bc-4269-a4a1-14119a95d26c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncomeTaxDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">11.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Taxes</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2023, the Company recorded an income tax benefit of $</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_2fdb5969-82ec-4068-b63a-e06023f12d89" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="6" decimals="-5" sign="-" format="ixt:num-dot-decimal">6.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and an income tax provision of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f1bd9cf4-fe80-4455-a91c-2ba228442992" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">5.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The Company&#x2019;s effective tax rate for the three and nine months ended September 30, 2023 was </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8de19e83-bc4a-40b1-81c7-f93c0d66a281" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">56.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%)</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_aa478725-648e-4913-9051-816fc87f4c75" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">8.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, compared to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4058de29-69ca-4389-898b-5be66dd59a25" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">14.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3f44e8ef-7a64-46ce-be9c-4f573e40795d" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">17.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% for the corresponding periods in the prior year.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On August 16, 2022, the United States enacted the Inflation Reduction Act of 2022 (&#34;Inflation Reduction Act&#34;), which, among other things, implements a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d0675df3-087f-4f49-90f7-99c6bfdfcb30" contextRef="C_fc69ac89-a7ff-422d-9cf6-d80cd05875e6" name="rgen:PercentageOfCurrentFederalTaxExpenseBenefit" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">15</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% alternative minimum tax on global adjusted financial statement income of certain large corporations, a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0e36dc14-1dd1-4a5f-8668-6233e11d49a1" contextRef="C_fc69ac89-a7ff-422d-9cf6-d80cd05875e6" name="rgen:PercentOfExciseTaxOnNetStockRepurchases" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% excise tax on net stock repurchases and several tax incentives to promote clean energy and was effective beginning in 2023. We evaluated the provisions of the Inflation Reduction Act and no provision had a material effect on our consolidated financial position or results of operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8f98b845-de0d-4465-b551-5e85959b0661" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EarningsPerShareTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">12.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Earnings Per Share</span></div></div><div style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_06b40d56-4e3e-47ce-a6a0-f99bcb506dec" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of basic and diluted weighted average shares outstanding is as follows:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:45.72%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.14%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except per share data)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Numerator:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0d4cde8d-41c3-4ddf-bf81-8d87ad4b56fa" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,172</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e70e4177-6b13-4a58-8c63-dbf2cb8b31af" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,405</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f3b3f6cf-1b3b-4c66-a563-b8db824f0d17" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_dc7786a4-b1f2-4cab-ba7f-9a5f1b912b0b" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,230</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Effect of dilutive securities:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Charges associated with convertible debt instruments, net of tax</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_be96f0e2-f479-4b6a-a0fc-7b4a17dec8d0" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:InterestOnConvertibleDebtNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8a43c7b1-ec44-4da6-9b64-747dab01f7b4" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:InterestOnConvertibleDebtNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_539e85a9-86d9-4903-b43b-fbc5e110939d" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:InterestOnConvertibleDebtNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#x2014;</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ac1a8847-067f-4542-85ea-9d303412daab" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:InterestOnConvertibleDebtNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">387</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Numerator for diluted earnings per share &#x2013; net income available to common stockholders after the effect of dilutive securities</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d1eeeba7-19f9-4f92-8c6d-fd5b9385a7af" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:NetIncomeLossAttributableToParentDiluted" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,172</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1b345f04-6055-4cea-9d82-8a7ad136d8de" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:NetIncomeLossAttributableToParentDiluted" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,405</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5e13343b-e160-40a0-98b9-7506715e7cd6" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NetIncomeLossAttributableToParentDiluted" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,065</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c9fe29bf-601d-474e-af2a-41b3c0bed53c" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:NetIncomeLossAttributableToParentDiluted" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,617</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Denominator:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted average shares used in computing net income per share &#x2013; basic</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_8369cf9e-9a9e-43b2-9a9c-46cd5cbfdad8" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="rgen:NumberOfSharesBasicOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,766</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fdf864c9-70fc-4cbd-acf0-4c3958e7ef3f" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="rgen:NumberOfSharesBasicOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,498</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_676e0ad3-bdaa-4639-931f-fc6597048f73" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:NumberOfSharesBasicOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,688</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_45d8229e-a48c-43d5-b44e-e40ab0009683" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="rgen:NumberOfSharesBasicOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,432</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Effect of dilutive shares:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Options and stock units</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d19eb3d2-32f1-4ded-ba5c-3c38994ca274" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">439</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d3202e7e-a2f7-4534-b97b-d5f8c6c774ca" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">673</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9662e937-e91e-4281-a3b7-4dbde23bb241" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">469</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_28670b10-5843-49d9-8ed7-7dd71db7877a" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">663</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Convertible Senior Notes</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1af8ad36-71eb-48dc-b4aa-52a59a247448" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">735</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3036d968-3bac-430a-884e-09a1425bae8a" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">1,131</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e1375817-02b4-41eb-98fd-601018884935" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">776</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cac848ce-4357-43a9-9428-706f119f967e" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">1,501</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Dilutive effect of unvested performance stock units</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_fb051dca-69c3-40ab-867a-f5153fd87d66" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" unitRef="U_shares" decimals="0" format="ixt:fixed-zero">-</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ae59f6de-8744-4eb3-b561-a73491c06f74" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">2</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d20d107d-4008-4b30-8ba5-539e37c8dd11" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" unitRef="U_shares" decimals="0" format="ixt:fixed-zero">-</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e8701f7e-e445-45d2-bd4f-d27f43c111b1" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">2</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Dilutive potential common shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b496aebb-1a5f-479a-9f52-88e235b87d76" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">1,174</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ec7dc828-5989-437d-845c-219362641385" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">1,806</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_0e6f68ec-aefc-4fad-93b1-d7f55ffb833c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">1,245</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d0ef776b-34c8-4518-b82d-8ed46ced44b5" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">2,166</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Denominator for diluted earnings per share &#x2013; adjusted weighted average shares used in computing net income per share &#x2013; diluted</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_03263cf1-8da3-4dee-aed4-be832402a467" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">56,940</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_cf682d2b-51af-4469-8f99-3fadf776b09b" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">57,304</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e5e9c80c-a886-4536-b2f7-9eeafdd50f6e" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">56,933</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_69be1929-52ef-44e0-98a4-4365ce2b64f0" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">57,598</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnings per share:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Basic</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_b12540f2-fe5d-4b0d-b30c-ffb5585f195f" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.33</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_caf8cb38-b597-4094-bd43-453d9fc6448b" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.73</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7a393e57-2f89-4fba-af37-80922ba0aa6c" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.20</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_701e4e62-1af2-4a37-a2cb-6865b4336d83" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">2.48</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Diluted</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f488da97-5fb9-48a7-981d-8e299a5d899b" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.32</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_bb8a04f7-a743-4997-a33d-29d1261e96b2" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.71</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_041017e0-4348-4075-85b2-9889d7a5a9a4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">1.18</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_548f5708-51af-47d9-bc24-d1a23e4f671e" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">2.39</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p>
       <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2023, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d78bf37e-18e4-4bfa-8c0a-4c8f3b83f082" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">301,404</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d4dd2dc1-b856-4d29-8f13-d343dee1c1d4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">328,179</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively, of the Company&#x2019;s common stock were excluded from the calculation of diluted EPS because the exercise prices of the stock options were greater than or equal to the average price of the common shares and were therefore anti-dilutive. Comparatively, for the three and nine months ended September 30, 2022, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7cee2571-e645-4ec9-a049-4d8f4e9985e2" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">112,179</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_eb40ed2a-9456-4bbf-8664-400f329cbb70" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">149,187</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively, were considered anti-dilutive.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In July 2019, the Company issued $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_24cde739-04e6-415f-aa05-49568953e315" contextRef="C_efc02b50-9525-4ec9-b3eb-ef2a3b59eac5" name="us-gaap:DebtInstrumentFaceAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">287.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal amount of the 2019 Notes. As provided by the terms of the indenture underlying the 2019 Notes, prior to March 4, 2022, conversion of the 2019 Notes could have been settled in cash, shares of the Company&#x2019;s common stock or a combination thereof, at the Company&#x2019;s election. On March 4, 2022, we entered into the Second Supplemental Indenture for the 2019 Notes, which irrevocably elected to settle the conversion of the 2019 Notes using a combination of cash and shares of the Company&#x2019;s common stock, settling the par value of the 2019 Notes in cash and any excess conversion premium in shares.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As provided by the terms of the Second Supplemental Indenture underlying the 2019 Notes, the Company irrevocably elected to settle the conversion obligation for the 2019 Notes in a combination of cash and shares of the Company's common stock. This means the Company will settle the par value of the 2019 Notes in cash and any excess conversion premium in shares. The Company adopted ASU 2020-06 effective January 1, 2022. Under ASU 2020-06, the Company is required to reflect the dilutive effect of the convertible securities by application of the &#34;if-converted&#34; method, which means the denominator of the EPS calculation would include the total number of shares assuming the 2019 Notes had been fully converted at the beginning of the period. Prior to March 4, 2022, the Company had the choice to settle the conversion of the 2019 Notes in cash, stock or a combination of the two. Therefore, from January 1, 2022 (the date the Company adopted ASU 2020-06) to March 4, 2022, the Company included </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3766d67f-2502-4650-9daf-0b42e83202ca" contextRef="C_cd91b63d-890b-47e9-9ad5-3ac68b67252f" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">3,474,429</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares in the denominator of the EPS calculation, applying the if converted method. Subsequent to March 4, 2022, after the Second Supplemental Indenture became effective, the Company irrevocably elected to settle the conversion obligation for the 2019 Notes in a combination of cash and shares of the Company's common stock, and from March 5, 2022 forward, only the excess premium will be settled with shares. Under the if-converted method of calculating dilutive shares, the Company was also required to exclude amortization of debt issuance costs and interest charges applicable to the convertible debt from the numerator of the dilutive EPS calculation for the period from January 1, 2022 to March 4, 2022, as if the interest on convertible debt was never recognized for that period. For the three months ended March 31, 2022, the Company excluded interest charges of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5b49c09e-76e9-4880-93d9-64bae2293555" contextRef="C_0e18670b-fdd8-4e65-a456-fbee7920c0b9" name="us-gaap:InterestOnConvertibleDebtNetOfTax" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of tax) from the numerator.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prior to the adoption of ASU 2020-06, the Company applied the provisions of ASC 260, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#x201c;Earnings Per Share,&#x201d;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Subsection 10-45-44, to determine the diluted weighted average shares outstanding as it related to the conversion spread on its convertible notes. Accordingly, the par value of the 2019 Notes was not included in the calculation of diluted income per share, but the dilutive effect of the conversion premium was considered in the calculation of diluted net income per share using the treasury stock method. The dilutive impact of the 2019 Notes was based on the difference between the Company&#x2019;s current period average stock price and the conversion price of the 2019 Notes, provided there was a premium. Pursuant to this accounting standard, there was no dilution from the accreted principal of the 2019 Notes. For the three and nine months ended September 30, 2023, the dilutive effect of the conversion premium included in the calculation of diluted earnings was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_117a016d-2e7a-4a5d-9815-f67fafd89bc1" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="rgen:DilutiveEffectOnSharesOfConversionPremium" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">735,150</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9cf90927-eb6f-4139-a1e6-af4a421746b7" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="rgen:DilutiveEffectOnSharesOfConversionPremium" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">776,339</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively. For the three and nine months ended September 30, 2022, the dilutive effect of the conversion premium included in the calculation of diluted earnings was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d91f3b52-f874-429c-96d1-0f37cfeeae0c" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="rgen:DilutiveEffectOnSharesOfConversionPremium" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">1,130,530</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d0fa533e-42d9-46bd-8107-cc9409d36c75" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="rgen:DilutiveEffectOnSharesOfConversionPremium" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">1,500,717</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f4829596-2c7d-4cf0-a012-87e24a057db4" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">13.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Related Party Transactions</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain facilities leased by our subsidiary, Spectrum LifeSciences LLC (&#34;Spectrum&#34;) are owned by the Roy T. Eddleman Living Trust (the &#34;Trust&#34;). As of September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the Trust owned greater than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_1042bcb7-c07d-412a-b3b8-1bdf75267107" contextRef="C_3b07fa83-c650-4d0d-b745-c9e66a7af009" name="us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the Company&#x2019;s outstanding shares. Therefore, the Company considers the Trust to be a related party. The lease amounts paid to the Trust prior to the public offering were negotiated in connection with the acquisition of Spectrum. The Company incurred rent expense totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_6ae368e8-3e12-4090-bba5-5b121db61bdb" contextRef="C_b74f3545-bb1d-46da-b557-40afee4df3f5" name="us-gaap:PaymentsForRent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_96b32cad-05dc-4431-a241-252c9259befc" contextRef="C_639cc313-9a7c-4dc1-b645-6a131f543337" name="us-gaap:PaymentsForRent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million respectively for each of the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> related to these leases and incurred rent expense of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_9e391d38-18db-4d96-a00f-5736d594f33c" contextRef="C_0ed23a08-558e-4162-aad8-2f48177e907a" name="us-gaap:PaymentsForRent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_6e8864cb-6bc3-4e87-b619-5fa6b71b5730" contextRef="C_809c4263-b3f1-466a-91ad-d90a49cd1f3b" name="us-gaap:PaymentsForRent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p></ix:nonNumeric></div>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_bbb898e7-30a9-4680-b64d-759477b8d67a" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SegmentReportingDisclosureTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">14.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Segment Reporting </span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating segments are components of an enterprise that engage in business activities for which discrete financial information is available and regularly reviewed by the chief operating decision maker (&#34;CODM&#34;) in deciding how to allocate resources and assess performance. Our Chief Executive Officer (&#34;CEO&#34;) has been identified as the CODM.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">21</span></p>
     <hr style="page-break-after:always;" /><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:exclude><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company views its operations, makes decisions regarding how to allocate resources and manages its business as </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_79f53e64-5d7e-444e-80a3-e5b7c855fcd3" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:NumberOfOperatingSegments" unitRef="U_Segment" decimals="0" format="ixt-sec:numwordsen">one</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating segment and one reportable segment. Our CODM evaluates financial information on a consolidated basis. As a result, the required financial segment information can be found in the consolidated condensed financial statements of the Company disclosed herein.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2db2d1ac-42a2-4616-b399-d492779ed9c8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table represents the Company&#x2019;s total revenue by geographic area (based on the location of the customer):</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:60%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:6.068%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.676%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.175%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:5.082000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.676%;"></td>
        <td style="width:1%;"></td>
        <td style="width:6.309%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue by customers' geographic locations:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">North America</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e924163e-3adf-4184-8892-108b43edabac" contextRef="C_d9b1dcb1-9927-4eb9-b054-87234e8e2ba3" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">49</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_48cdb6b0-ea21-4a9f-80eb-a2506cc95479" contextRef="C_f23a5451-71e9-4709-892a-2715747cf854" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">42</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_93f6fd4d-278b-4860-b9fb-89f3f4c6d543" contextRef="C_78bc408c-ba59-4d1a-a9be-933157c80135" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">44</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_f3849ea3-1d1e-4910-9f42-e5bf34ddbbb1" contextRef="C_00add57c-f99c-46ef-8537-6bd7a775258b" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">42</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Europe</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3d9df067-062b-4888-a787-93166d3bf2aa" contextRef="C_921bbbf7-e99d-47d0-a160-678bbbdb19f8" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">34</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_755ed975-b4c8-4c85-824a-e5c704052560" contextRef="C_42ec1346-b9a4-4918-9f08-2f61dd8e7f7f" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">35</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_d4fd05b6-90d0-4cc8-92ac-c27edb2db53c" contextRef="C_2a837317-8e58-45b6-b3da-840fb7cb9c0a" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">36</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a92d5a55-2616-4bdc-a434-bff3b609fb9d" contextRef="C_0008747b-7daf-4d3f-b5d3-4dbf779713e9" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">38</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">APAC/Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_37867a86-482b-4d9e-bf12-053246019230" contextRef="C_b8ef5c7e-f8c6-4f5d-a4c9-5f1b67b8a6b3" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">17</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_e66c6ac8-5174-4720-8518-e8a0c5664a3c" contextRef="C_5dbe09cf-f7d1-4d59-a8c0-ff73f2f6afc8" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">23</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_a67be4f9-7e8d-47d7-96d9-f77da9929b13" contextRef="C_2668adfd-7544-470d-92f5-c9a9606b8fca" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">20</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_03112d61-829a-4174-abb7-b785c5f0118d" contextRef="C_8cf25956-fc00-4b82-8e1d-4eea0e5db938" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">20</ix:nonFraction></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_903dc3a2-153e-43ba-bf89-f7be98921a3a" contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_7f950296-5943-4849-9543-22f6184f2594" contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_27ad56ec-db60-43b5-bba3-d32bbe6ca595" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_4607c242-d05f-46b8-8e19-44d2dd999b5c" contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">100</ix:nonFraction></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Concentrations of Credit Risk and Significant Customers</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial instruments that subject the Company to significant concentrations of credit risk primarily consist of cash and cash equivalents, marketable securities and accounts receivable. Per the Company&#x2019;s investment policy, cash equivalents and marketable securities are invested in financial instruments with high credit ratings and credit exposure to any one issue, issuer (with the exception of U.S. Treasury obligations) and type of instrument is limited. At September 30, 2023 and December 31, 2022, the Company had no investments associated with foreign exchange contracts, options contracts or other foreign hedging arrangements.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Concentration of credit risk with respect to accounts receivable is limited to customers to whom the Company makes significant sales. While a reserve for the potential write-off of accounts receivable is maintained, the Company has not written off any significant accounts to date. To control credit risk, the Company performs regular credit evaluations of its customers&#x2019; financial condition.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">There was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c456b181-173a-4c8f-bed3-9c7c84c59f0d" contextRef="C_f859f923-a1d6-484b-a120-fbb36fa356cd" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt-sec:numwordsen"><ix:nonFraction id="F_368e7a43-d105-4d5a-9266-6ed8b317d268" contextRef="C_3d5ddb9e-aa00-4182-b58c-09394221355b" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt-sec:numwordsen"><ix:nonFraction id="F_21852063-6c1a-4f33-99c8-499ef7e5232f" contextRef="C_27bc5ff3-df20-4dd1-939c-d3e0c6c7b5c0" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt-sec:numwordsen"><ix:nonFraction id="F_03aaa645-c2d2-4086-bdba-14f21d2c50a3" contextRef="C_1cdbcd11-292d-4c07-b976-f886f65abbcc" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> revenue from customers that represented </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_08a7a020-fc09-4d59-95f5-909b0b882a16" contextRef="C_c4545892-7ce6-4242-a05b-e23c3cc4a419" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal"><ix:nonFraction id="F_248bd732-911e-4955-8302-7d3d4f036898" contextRef="C_e7591784-590d-4139-89d4-0d5eeed2eceb" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal"><ix:nonFraction id="F_271f8964-6fbd-49be-a292-a6736439b1b3" contextRef="C_ffb0abda-eca1-46cd-b1b8-8ae39258300c" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal"><ix:nonFraction id="F_73b2eded-ae08-42b4-a101-3f466f886eda" contextRef="C_cd4e55d8-a771-4a3f-a1d7-8ea1523e5ffa" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">10</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% or more of the Company's total revenue for the three and nine months ended September 30, 2023 and 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">No accounts receivable balance from a specific customer represented </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_ab527a43-2563-4fed-b21d-23a7914350d7" contextRef="C_0364194f-9ad2-4f36-8666-7a7194eed471" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">10</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% or more of the Company's total trade accounts receivable at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Significant accounts receivable balances representing </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_c56cb6b1-f61c-40f1-847c-020ec95461a0" contextRef="C_db66190a-5326-4a07-b1a9-31b2a75509cc" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">10</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% or more of the Company's accounts receivable and royalties at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> came from our accounts receivable balance outstanding with Purolite, an Ecolab Inc. company, which was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_3fed5857-d84b-46b7-8203-7b27c6b10f6a" contextRef="C_e2162459-d2f2-4f1d-82c5-8e7e4f62d09a" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_64541903-b27c-4f60-a143-6025c37aa014" contextRef="C_abbc99bb-674c-4cde-9869-3bc5c9875a77" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">12.7</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of our total trade accounts receivable balance.</span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c6f2c5b7-aac0-4031-8215-30c9d28116c8" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="us-gaap:SubsequentEventsTextBlock" escape="true"><div style="text-indent:0;display:flex;margin-top:12pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">15.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Subsequent Event</span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Acquisition of Metenova Holding AB</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6867c792-0a64-4141-89e4-e020bee1485f" contextRef="C_145e26ad-9866-4d83-985a-d837ec5e86ae" name="us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">October 2, 2023</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, Repligen Sweden AB, a subsidiary of the Company completed its acquisition of all of the outstanding equity interests in Metenova Holding AB (&#34;Metenova&#34;), pursuant to a Share Sale and Purchase Agreement with, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">inter alia, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Metenova for approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><ix:nonFraction id="F_5ef3521a-3756-4787-b1a8-3c7d5da9e439" contextRef="C_145e26ad-9866-4d83-985a-d837ec5e86ae" name="us-gaap:CashAcquiredFromAcquisition" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">173</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash and the Company's equity. Metenova will further strengthen our fluid management portfolio with its magnetic mixing and drive train technologies that are widely used by global biopharmaceutical companies and contract development and manufacturing organizations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company will account for the acquisition of Metenova as a purchase of business under the acquisition method of accounting and has engaged a third-party valuation firm to assist with the valuation of the business acquired. The estimated purchase price allocation for the acquisition of Metenova will be included in the Annual Report on Form 10-K for the year ended December 31, 2023.</span></p></ix:nonNumeric></div>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item2_mda"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM  2. MANAGEMENT&#x2019;S DISCUSSION AND ANAL</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">YSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Overview</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Repligen and its subsidiaries, collectively doing business as Repligen Corporation (&#x201c;Repligen&#x201d;, &#x201c;we&#x201d;, &#x201c;our&#x201d;, or the &#x201c;Company&#x201d;) is a global life sciences company that develops and commercializes highly innovative bioprocessing technologies and systems that increase efficiencies and flexibility in the process of manufacturing biological drugs.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As the overall market for biologics continues to grow and expand, our customers &#x2013; primarily large biopharmaceutical companies and contract development and manufacturing organizations and other life sciences companies (integrators) &#x2013; face critical production cost, capacity, quality and time pressures. Built to address these concerns, our products help set new standards for the way biologics are manufactured. We are committed to inspiring advances in bioprocessing as a trusted partner in the production of critical biologic drugs &#x2013; including monoclonal antibodies, recombinant proteins, vaccines and cell and gene therapies &#x2013; that are improving human health worldwide. Increasingly, our technologies are being implemented to overcome challenges in processing plasmid DNA (a starting material for the production of mRNA) and gene delivery vectors such as lentivirus and adeno-associated viral vectors. For more information regarding our business, products and acquisitions, see Part I, Item 1, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#x201c;Business&#x201d;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> included in our 2022 Annual Report on Form 10-K (&#x201c;Form 10-K&#x201d;), which was filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) on February 22, 2023.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We currently operate as one bioprocessing business, with a comprehensive suite of products to serve both upstream and downstream processes in biological drug manufacturing. Building on over 40 years of industry expertise, we have developed a broad and diversified product portfolio that reflects our passion for innovation and the customer-first culture that drives our entire organization. We continue to capitalize on opportunities to maximize the value of our product platform through both organic growth initiatives (internal innovation and commercial leverage) and targeted acquisitions.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Macroeconomic Trends</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As a result of our global presence, a significant portion of our revenue and expenses is denominated in currencies other than the U.S. dollar. We are therefore subject to non-U.S. exchange exposure. Exchange rates can be volatile and a substantial weakening or strengthening of foreign currencies against the U.S. dollar could increase or reduce our revenue and gross profit margin and impact the comparability of results from period to period.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have experienced, and expect to continue to experience, cost inflation, primarily in raw materials, and other supply chain costs, as a result of global macroeconomic trends, including global geopolitical conflicts and labor shortages. Actions taken to mitigate supply chain disruptions and inflation, including price increases and productivity improvements, have generally been successful in offsetting the impact of these trends.  In addition, decreasing demand for COVID-19 vaccinations is driving a reduction in future demand of our products related to these vaccines. We expect that these trends will continue to impact our results for the rest of 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 Acquisitions</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Acquisition of FlexBiosys, Inc.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On April 17, 2023, we completed the acquisition of all of the outstanding equity interests in FlexBiosys, Inc. (&#34;FlexBiosys&#34;), pursuant to an Equity Purchase Agreement (&#34;EPA&#34;) with FlexBiosys, TSAP Holdings Inc. (&#34;NJ Seller&#34;), Gayle Tarry and Stanley Tarry, as individuals (collectively with NJ Seller, the &#34;Sellers&#34;), and Stanley Tarry, in his capacity as the representative of the Sellers (the &#34;FlexBiosys Acquisition&#34;).</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">FlexBiosys, which is headquartered in Branchburg, New Jersey, offers expert design and custom manufacturing of single-use bioprocessing products and a comprehensive range of products that include bioprocessing bags, bottles, and tubing assemblies. These products will complement and expand our fluid management portfolio of offerings.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Acquisition of Metenova Holding AB</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On October 2, 2023, we completed the acquisition of all of the outstanding equity interests in Metenova Holding AB (&#34;Metenova&#34;), pursuant to a Share Sale and Purchase Agreement with, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">inter alia, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Metenova for approximately $173 million in cash and the Company's equity. Metenova will further strengthen our fluid management portfolio with its magnetic mixing and</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">23</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">drive train technologies that are widely used by global biopharmaceutical companies and contract development and manufacturing organizations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Critical Accounting Policies and Estimates</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A &#x201c;critical accounting policy&#x201d; is one which is both important to the portrayal of our financial condition and results and requires management&#x2019;s most difficult, subjective or complex judgments, often as a result of the need to make estimates about the effect of matters that are inherently uncertain. For a description of our critical accounting policies that affect our more significant judgments and estimates used in the preparation of our consolidated financial statements, refer to Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations and our significant accounting policies in Note 2, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Summary of Significant Accounting Policies&#34;,</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to the consolidated financial statements included in our Form 10-K.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Results of Operations</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following discussion of the financial condition and results of operations should be read in conjunction with the accompanying consolidated financial statements and the related footnotes thereto.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Revenues</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue for the three and nine months ended September 30, 2023 and 2022 were as follows:</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:17.698%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.136%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.136%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.721%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.204%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.136%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.136%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.721%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.204%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="30" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except for percentage data)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Revenue:</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Products</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">141,156</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">200,708</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(59,552</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(29.7</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">482,910</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">614,668</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(131,758</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(21.4</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Royalty and other</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">33</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">9.1</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">111</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">106</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">5</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">4.7</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">141,192</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">200,741</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(59,549</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(29.7</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">483,021</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">614,774</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(131,753</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(21.4</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Product revenues</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Since 2016, we have been increasingly focused on selling our products directly to customers in the pharmaceutical industry and to our contract manufacturers. These direct sales represented approximately 88.4% and 86.2% of our product revenue for each of the three months ended September 30, 2023 and 2022, respectively, and represented 85.6% and 87.5% of our product revenue for each of the nine months ended September 30, 2023 and 2022, respectively. Sales of our bioprocessing products can be impacted by the timing of large-scale production orders and the regulatory approvals for such antibodies, which may result in significant quarterly fluctuations.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenues from our filtration franchise include the sales of our XCell ATF</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> systems and consumables; Spectrum filtration systems, including KrosFlo</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">; SIUS</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">filtration products and systems; the fluid management assemblies and components offered by Engineered Molding Technology LLC, Non-Metallic Solutions, Inc., ARTeSYN Biosolutions Ireland Limited (&#34;ARTeSYN&#34;), Bio-Flex Solutions, L.L.C. and FlexBiosys; the hollow fiber membrane technology offered by Polymem S.A., and our ARTeSYN filtration systems. Revenue from our chromatography products includes the sale of our OPUS pre-packed chromatography columns, ELISA test kits and chromatography systems from Spectrum and ARTeSYN. Revenue from proteins products includes the sale of our Protein A ligands and cell culture growth factors, and sales of affinity products, including adeno-associated virus resins offered by Avitide, Inc. (&#34;Avitide&#34;). Revenue from our process analytics products includes the sale of our SoloVPE</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, FlowVPE</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and FlowVPX</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> systems, consumables and service. Other revenue primarily consists of sales of our operating room products to hospitals as well as freight revenue.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the three and nine months ended September 30, 2023, product revenue decreased by $60.0 million, or 29.7%, and $131.8 million, or 21.4%, respectively, as compared to the same periods of 2022. This is mainly due to a decrease in revenue from programs related to COVID-19 as customers continue to repurpose inventory initially purchased for COVID-19 therapeutics and vaccines. This primarily affected our filtration products. Partially offsetting these revenue declines were price increases and strong performances within the Chromatography and Process Analytics franchises during the nine months ended September 30, 2023, as compared to the same period of 2022. Specifically, revenue from sale of chromatography systems and flowpaths as well as slope spectroscopy systems, consumables and service.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Royalty and other revenues</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Royalty and other revenues in the three and nine months ended September 30, 2023 and 2022 relate to royalties received from a third-party systems manufacturer associated with our OPUS PD chromatography columns. Royalty revenues are variable and are dependent on sales generated by our partners.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Costs of Product Revenue and Operating Expenses</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total costs and operating expenses for the three and nine months ended September 30, 2023 and 2022 were comprised of the following:</span></p>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:15.698%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.976999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.439%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.976999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.439%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="8" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="8" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="30" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except for percentage data)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">104,634</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">86,514</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">18,120</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">20.9</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">265,786</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">255,130</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">10,656</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">4.2</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">10,577</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">10,228</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">349</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3.4</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">32,437</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">32,823</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(386</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(1.2</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">55,465</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">53,643</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,822</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3.4</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">160,601</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">162,592</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(1,991</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(1.2</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Contingent Consideration</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(34,292</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(2,309</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(31,983</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1385.1</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(31,266</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(11,604</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(19,662</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">169.4</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total costs and operating expenses</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">136,384</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">148,076</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(11,692</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(7.9</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">427,558</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">438,941</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(11,383</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(2.6</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Cost of product revenue</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue increased 20.9% and 4.2% in the three and nine months ended September 30, 2023, respectively, compared to the same periods of 2022. The increase is primarily due to restructuring charges, including a $17.2 million inventory write-off to adjust inventory to net realizable value, a $3.8 million charge for accelerated depreciation on equipment related to  manufacturing facilities to be closed and $1.7 million in severance and other charges during the third quarter of 2023 as a result of our restructuring activities, which commenced in July 2023. See Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Restructuring Plan&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of this report for more information on the Restructuring Plan. Our restructuring activities include the closing of manufacturing facilities, discontinuing the sale of certain product SKUs, and evaluating raw materials and components secured during the 2020-2022 COVID-19 pandemic period (the &#34;COVID-19 Period') to meet increasing demand during a challenging supply chain environment in the industry. Where demand has reduced, finished goods and raw materials, whose value exceeded the projected requirements to be used before reaching their expiration date, were written down to their net realizable value. The inventory write-off includes reserved values which may be recoverable in future periods, if salvageable. In addition, there was an increase due to cost inflation, primarily in raw materials as well as freight charges due to fuel costs and carrier market conditions during the three and nine months ended September 30, 2023, compared to the same periods of 2022. Also, our occupancy costs and depreciation expense increased during the three and nine months ended September 30, 2023, as compared to the same periods of 2022, due to expanded facilities and manufacturing equipment being placed into service throughout 2022 and 2023. These increases were partially offset by a decrease in costs associated with lower revenue as well as a decrease in employee-related costs not related to the restructuring activities in the three and nine months ended September 30, 2023, as compared to the same periods of 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gross margin was 25.9% and 56.9% in the three months ended September 30, 2023 and 2022, respectively and gross margin was 45.0% and 58.5% in the nine months ended September 30, 2023 and 2022, respectively. The reduction in gross margin in the three and nine months ended September 30, 2023, as compared to the same periods of 2022, is primarily due to restructuring activities as noted above during the third quarter of 2023 to simplify and streamline our organization and strengthen the overall effectiveness of our operations. In addition, lower margins were a result of lower overall sales and production volumes, and a change in product mix, where we saw a significant decline in revenue associated with higher-margin consumable products due to the decrease in COVID-19 vaccine demand. We also experienced an increase in manufacturing costs from an increase in occupancy costs due to added capacity, an increase in depreciation expense, and an increase in freight charges from cost inflation.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Research and development expenses</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Research and development (&#x201c;R&amp;D&#x201d;) expenses are related to bioprocessing products, which include personnel, supplies and other research expenses. Due to the fact that these various programs share personnel and fixed costs, we do not track all of our expenses or allocate any fixed costs by program, and therefore, have not provided historical costs incurred by project.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">R&amp;D expenses increased $0.3 million during the three months ended September 30, 2023 and decreased $0.4 million for the nine months ended September 30, 2023, compared to the same periods of 2022. For the three month period, the increase in</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">employee-related costs during the period from an increase in headcount since the end of the third quarter of 2022 as well as an increase in depreciation expense and spending on new product development more than offset a decrease in occupancy costs for facilities where R&amp;D work is performed. For the nine month period, the decrease in occupancy costs for facilities where R&amp;D work is performed more than offset the increase in employee-related costs, an increase in depreciation expense and spending on new product development.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">R&amp;D expense also includes payments made to expand our proteins product offering through our agreement with Navigo Proteins GmbH (&#x201c;Navigo&#x201d;). Such expenses were $0.8 million and $3.1 million, respectively, for the three and nine months ended September 30, 2023, as compared to $0.3 million and $1.4 million, respectively, for the same periods in 2022, in the form of milestone payments to Navigo.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We expect our R&amp;D expenses for the remainder of 2023 to gradually increase to support new product development.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Selling, general and administrative expenses</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative (&#x201c;SG&amp;A&#x201d;) expenses include the costs associated with selling our commercial products and costs required to support our marketing efforts, including legal, accounting, patent, shareholder services, amortization of intangible assets and other administrative functions.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">SG&amp;A costs increased by $1.8 million, or 3.4% during the three months ended September 30, 2023 and decreased $2.0 million, or 1.2%, during the nine months ended September 30, 2023, as compared to the same periods of 2022. Both the three and nine month periods include an increase in SG&amp;A costs related to the operations of FlexBiosys, which have been included in our results of operations since the acquisition date in April 2023 and $1.3 million in one-time costs incurred from restructuring activities during the third quarter, for which there were no comparable costs in the same periods of 2022. For the three-month period, there was also an increase in professional fees related to the FlexBiosys Acquisition, compared to the same period last year. Partially offsetting these increases was a decrease in employee-related costs during the three months ended September 30, 2023, as compared to the same period of 2022. For the nine-month period, the increases in SG&amp;A costs related to FlexBiosys operations and restructuring were more than offset by a decrease in in the amount of commissions paid out resulting from lower revenue and a decrease in employee-related costs.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contingent consideration</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration benefit represents the change in fair value of the contingent consideration obligation included in current and noncurrent contingent consideration on the consolidated balance sheets as of the end of each period. Remeasurement of the contingent consideration obligation is done each quarter and the carrying value of the obligation is adjusted to the current fair value through our condensed consolidated statements of comprehensive income. Expected results and a change in market inputs used to calculate the discount rate, resulted in a change to the benefit reported for the three months ended September 30, 2023 and 2022 of ($34.3) million and ($2.3) million, respectively, and ($31.3) million and ($11.6) million for the nine months ended September 30, 2023 and 2022, respectively.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Income (Expenses), net</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The table below provides detail regarding our other expenses, net:</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:15.698%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.976999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.439%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.3919999999999995%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.976999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.989%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.439%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="30" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except for percentage data)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Investment income</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">6,662</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,177</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">4,485</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">206.0</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">18,112</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,962</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">15,150</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">511.5</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Interest expense</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(269</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(329</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">60</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(18.2</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(813</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(892</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">79</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(8.9</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(459</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(455</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(4</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">0.9</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(1,373</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(1,360</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(13</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Other income (expenses)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">895</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(6,591</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">7,486</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(113.6</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,500</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(10,389</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">11,889</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(114.4</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total other income (expenses), net</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">6,829</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(5,198</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">12,027</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(231.4</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,426</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(9,679</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">27,105</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(280.0</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Investment income</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Investment income includes income earned on invested cash balances. Our investment income increased by $4.5 million and $15.2 million for the three and nine months ended September 30, 2023, respectively, compared to the same periods of 2022 due to an increase in interest rates on average invested cash balances since September 30, 2022, as well as interest earned on U.S. treasury bills purchased at the end of 2022. We expect investment income to vary based on changes in the amount of funds invested and fluctuation of interest rates.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Interest expense</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest expense in the three and nine months ended September 30, 2023 and 2022 is primarily from our 0.375% Convertible Senior Notes due 2024 (the &#x201c;2019 Notes&#x201d;), which were issued in July 2019. Interest expense for the three and nine months ended September 30, 2023 includes the contractual coupon interest on the 2019 Notes.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Amortization of debt issuance costs</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Transaction costs related to the issuance of the 2019 Notes and attributable to the liability component of the 2019 Notes are included in amortization of debt issuance costs on the condensed consolidated statements of comprehensive income.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other expenses</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The change in other expenses during the three and nine months ended September 30, 2023, compared to the same periods of 2022, is primarily attributable to realized foreign currency gains and losses related to transactions with customers and vendors.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Income Tax (Benefit) Provision</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income tax (benefit) provision for the three and nine months ended September 30, 2023 and 2022 was as follows:</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:15.642%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.061999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.829999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.944%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.402%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.061999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:7.829999999999999%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:6.944%;"></td>
    <td style="width:1%;"></td>
    <td style="width:0.985%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.402%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">% Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="30" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except for percentage data)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Income tax (benefit) provision</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(6,535</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">7,062</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(13,597</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(192.5</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">5,824</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">28,924</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(23,100</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(79.9</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Effective tax rate</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(56.2</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">14.9</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">8.0</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17.4</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2023, we recorded an income tax benefit of $(6.5) million and an income tax provision of $5.8 million, respectively. The effective tax rate was (56.2%)  and 8.0% for the three and nine months ended September 30, 2023, respectively, and is based upon the estimated income for the year ending December 31, 2023 and the composition of income in different jurisdictions. The difference in effective tax rates between the periods was primarily due to lower income before taxes and increased benefits from business tax credits, nontaxable contingent consideration and a deductible foreign exchange loss on certain long-term intercompany debt, partially offset by lower foreign-derived intangible income and nondeductible executive compensation. Our effective tax rate for the three and nine months ended September 30, 2023 was lower than the U.S. statutory rate of 21% primarily due to business tax credits, foreign-derived intangible income, windfall tax benefits on stock option exercise and the vesting of stock units, nontaxable contingent consideration and a deductible foreign exchange loss on certain long-term intercompany debt.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2022, we recorded an income tax provision of $7.1 million and $28.9 million, respectively. The effective tax rate was 14.9% and 17.4% for the three and nine months ended September 30, 2022, respectively, and is based upon the estimated income for the year ending December 31, 2022 and the composition of income in different jurisdictions. Our effective tax rate for the three and nine months ended September 30, 2022 was lower than the U.S. statutory rate of 21% primarily due to business tax credits, foreign-derived intangible income and windfall tax benefits on stock option exercise and the vesting of stock units.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On August 16, 2022, the United States enacted the Inflation Reduction Act of 2022 (&#34;Inflation Reduction Act&#34;), which, among other things, implements a 15% alternative minimum tax on global adjusted financial statement income of certain large corporations, a 1% excise tax on net stock repurchases and several tax incentives to promote clean energy and will become effective beginning in 2023. We evaluated the provisions of the Inflation Reduction Act and no provision had a material effect on our consolidated financial position or results of operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Non-GAAP Financial Measures</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">27</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We provide non-GAAP adjusted income from operations; adjusted net income; and adjusted EBITDA as supplemental measures to GAAP, measures regarding our operating performance. These financial measures exclude the items detailed below and, therefore, have not been calculated in accordance with GAAP. A detailed explanation and a reconciliation of each non-GAAP financial measure to its most comparable GAAP financial measure are provided below.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We include this financial information because we believe these measures provide a more accurate comparison of our financial results between periods and more accurately reflect how management reviews its financial results and measures the performance of our ongoing operations for the periods in which such charges are incurred.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Non-GAAP Adjusted Income from Operations</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjusted income from operations is measured by taking income from operations as reported in accordance with GAAP and excluding acquisition and integration costs, restructuring costs, contingent consideration fair value adjustments and intangible amortization booked through our condensed consolidated statements of comprehensive income. The following is a reconciliation of income from operations in accordance with GAAP to non-GAAP adjusted income from operations for the three and nine months ended September 30, 2023 and 2022:</span></p>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:53.729%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top: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:7pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GAAP income from operations</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4,808</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">52,665</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">55,463</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">175,833</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjustments to income from operations:</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition and integration costs</span></p></td>
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,147</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,251</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4,927</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,142</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restructuring costs</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration</span></p></td>
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(34,292</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(2,309</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(31,266</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(11,604</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible amortization</span></p></td>
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,492</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,547</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22,330</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,712</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjusted income from operations</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,167</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">58,154</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">75,466</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">191,083</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Non-GAAP Adjusted Net Income and Adjusted Earnings Per Share</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjusted net income and adjusted earnings per share is measured by taking net income as reported in accordance with GAAP and excluding acquisition and integration costs, restructuring costs, contingent consideration fair value adjustments, intangible amortization, amortization of debt issuance costs and the tax effects of these items. The following are reconciliations of net income and fully diluted earnings per share in accordance with GAAP to non-GAAP adjusted net income and adjusted fully diluted earnings per share for the three and nine months ended September 30, 2023 and 2022:</span></p>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:53.729%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fully Diluted</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fully Diluted</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Earnings per</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Earnings per</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amount</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Share*</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amount</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Share*</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except per share data)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GAAP net income</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18,172</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.32</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">40,405</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.71</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjustments to net income:</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition and integration costs</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,147</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.06</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,512</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.03</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restructuring costs</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.42</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(34,292</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.60</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(2,309</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.04</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible amortization</span></p></td>
    <td style="background-color:#ffffff;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,492</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.13</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,547</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.11</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">459</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.01</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">455</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.01</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Tax effect of non-GAAP charges</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(5,837</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.10</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(2,241</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.04</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjusted net income</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13,153</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.23</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">44,369</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.77</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:5%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">* Per share totals may not add due to rounding.</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">28</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:53.729%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.303%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.264%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fully Diluted</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fully Diluted</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Earnings per</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Earnings per</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amount</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Share*</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amount</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Share*</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except per share data)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GAAP net income</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">67,065</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.18</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">137,230</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2.39</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjustments to net income:</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition and integration costs</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4,927</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.09</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,403</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.13</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restructuring costs</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.42</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(31,266</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.55</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(11,604</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.20</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible amortization</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22,330</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.39</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,712</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.34</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(2)</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,373</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.02</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,360</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.02</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Tax effect of non-GAAP charges</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(8,793</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.15</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(4,600</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(0.08</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP adjusted net income</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">79,648</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.40</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">149,501</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2.61</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Adjusted EBITDA</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Adjusted EBITDA is measured by taking net income as reported in accordance with GAAP, excluding investment income, interest expense, amortization of debt issuance costs, income tax provision, depreciation and amortization, acquisition and integration costs, restructuring costs and contingent consideration fair value adjustments booked through our condensed consolidated statements of comprehensive income. The following is a reconciliation of net income in accordance with GAAP to adjusted EBITDA for the three and nine months ended September 30, 2023 and 2022:</span></p>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:52.987%;"></td>
    <td style="width:1.292%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.698%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.292%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.515999999999998%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.292%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.515999999999998%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.292%;"></td>
    <td style="width:1%;"></td>
    <td style="width:8.111999999999998%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GAAP net income</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18,172</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">40,405</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">67,065</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">137,230</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-GAAP EBITDA adjustments to net income:</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Investment income</span></p></td>
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(6,662</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(2,177</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(18,112</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(2,962</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest expense</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">269</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">329</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">813</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">892</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">459</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">455</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,373</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,360</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income tax provision</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(6,535</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,062</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,824</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">28,924</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation</span></p></td>
    <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:20pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12,186</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,097</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">28,530</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16,810</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible amortization</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,519</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,575</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22,412</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,795</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">EBITDA</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25,408</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">58,746</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">107,905</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">202,049</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other non-GAAP adjustments:</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition and integration costs</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,147</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,512</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4,927</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,403</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restructuring costs</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)(3)</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20,196</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20,196</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x2014;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contingent consideration</span></p></td>
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(34,292</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(2,309</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(31,266</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(11,604</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Adjusted EBITDA</span></p></td>
    <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="margin-left:10pt;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,459</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">57,949</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101,762</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">197,848</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="margin-left:5.065%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.5108231948175064%;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Restructuring Plan,&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to this report for more information on the restructuring activities during three and nine months ended September 30, 2023.  </span></div></div>
  <div style="margin-left:5.065%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.5108231948175064%;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 11, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Earnings Per Share,&#34; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to this report</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">for more information on the effects of adopting ASU 2020-06, &#x201c;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Debt - Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity&#x2019;s Own Equity (Subtopic 815-40),&#x201d; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">which we adopted effective January 1, 2022 to these financial statement line items.</span></div></div>
  <div style="margin-left:5.065%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.5108231948175064%;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Excludes $3.8 million of accelerated depreciation related to the Restructuring Plan. This amount is included the depreciation line item of this table.</span></div></div>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Liquidity and Capital Resources</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have financed our operations primarily through revenues derived from product sales, the issuance of the 2019 Notes in July 2019 and the issuance of common stock in our December 2020, July 2019 and May 2019 public offerings. Our revenue for the foreseeable future will primarily be limited to our bioprocessing product revenue.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On March 10, 2023, Silicon Valley Bank (&#x201c;SVB&#x201d;) was closed by the California Department of Financial Protection and Innovation, which appointed the FDIC as receiver. Subsequently, the U.S. Treasury, Federal Reserve and FDIC announced that SVB depositors would have access to all of their money. We have a banking relationship with SVB and hold cash, cash</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">equivalents and marketable securities of less than $0.1 million as of September 30, 2023 in SVB depository accounts to cover short-term operational payments. While we have not experienced any losses in such accounts, the recent failure of SVB caused us to utilize our accounts at other financial institutions in order to mitigate potential operational risks stemming from the temporary inability to access funds in our SVB operating accounts. As a result of bank failures, such as SVB, our access to funding sources in amounts adequate to finance or capitalize our current and projected future business operations could be significantly impaired and could negatively impact the financial institutions with which we have direct arrangements, or the financial services industry or economy in general.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2023, we had cash and cash equivalents of $630.8 million compared to cash and cash equivalents of $523.5 million at December 31, 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the third quarter of 2023, the closing price of our common stock exceeded 130% of the conversion price of the 2019 Notes for more than 20 trading days of the last 30 consecutive trading days of the quarter. As a result, the 2019 Notes are convertible at the option of the holders of the 2019 Notes during the fourth quarter of 2023, the quarter immediately following the quarter when the conditions are met, as stated in the terms of the 2019 Notes. These conditions have been met each quarter since the third quarter of 2020. As a result, $0.1 million aggregate principal amount of the 2019 Notes have been requested for conversion by the note holders since the issuance of the 2019 Notes and all conversions have settled as of September 30, 2023. The conversions resulted in the issuance of a nominal number of shares of our common stock to the note holders. Since the 2019 Notes mature within one year of the report date, we classify the carrying value of the 2019 Notes as current liabilities on our condensed consolidated balance sheet at September 30, 2023.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#34;Restructuring Plan&#34;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to this report, in July 2023, the Board of Directors authorized our management to undertake restructuring activities to simplify and streamline our organization and strengthen the overall effectiveness of our operations (the &#34;Restructuring Plan&#34;). Cash payments of $2.6 million related to the Restructuring Plan were made during the three and nine months ended September 30, 2023, with approximately $1 million to $2 million of expected costs remaining as of September 30, 2023. We expect to make substantially all remaining restructuring payments pursuant to the Restructuring Plan by the end of 2023.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Cash Flows</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:57.409%;"></td>
    <td style="width:1.196%;"></td>
    <td style="width:1%;"></td>
    <td style="width:10.610000000000001%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.196%;"></td>
    <td style="width:1%;"></td>
    <td style="width:10.610000000000001%;"></td>
    <td style="width:1%;"></td>
    <td style="width:1.196%;"></td>
    <td style="width:1%;"></td>
    <td style="width:11.786%;"></td>
    <td style="width:1%;"></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br />September 30,</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Increase/(Decrease)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:7pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">$ Change</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating activities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">84,853</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">110,201</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(25,348</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Investing activities</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">46,630</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(111,928</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">158,558</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financing activities</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(19,166</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(13,063</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(6,103</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effect of exchange rate changes on cash and cash equivalents</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(4,996</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(15,661</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10,665</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Net increase (decrease) in cash and cash equivalents</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">107,321</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(30,451</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">137,772</span></p></td>
    <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
    <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Operating activities</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the nine months ended September 30, 2023, our operating activities provided cash of $84.9 million reflecting net income of $67.1 million and non-cash charges totaling $29.2 million primarily related to depreciation, amortization, contingent consideration fair value adjustments, deferred income taxes, non-cash interest income and stock-based compensation charges. A decrease in accounts receivable provided $8.3 million of cash and was primarily driven by lower revenue. Additionally, we had a decrease in inventory manufactured that provided $26.0 million of which $17.2 million was related to the Restructuring Plan. An increase in prepaid expenses, primarily related to prepaid taxes and subscriptions consumed $10.7 million. A decrease in accounts payable and accrued expenses consumed $36.9 million and was due to the timing of payments to vendors as well as the payment of employee bonuses related to 2022 during the nine months ended September 30, 2023. The remaining cash provided by operating activities resulted from favorable changes in various other working capital accounts.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the nine months ended September 30, 2022, our operating activities provided cash of $110.2 million reflecting net income of $137.2 million and non-cash charges totaling $49.3 million primarily related to depreciation, amortization, contingent consideration adjustments, deferred income taxes and stock-based compensation charges. An increase in accounts receivable consumed $8.6 million of cash and was primarily driven by the 27.0% year-to-date increase in revenues. Additionally, we had an increase in inventory manufactured of $64.3 million to support expected increases in future revenue. Accounts payable decreased</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$10.1 million due to timing of payments to vendors. Offsetting these uses of cash was a $4.1 million net increase in operating lease liabilities due to new operating leases entered into during 2022 and a $3.0 million increase in accrued liabilities due to the increase in expected costs, including corporate income taxes. The remaining cash used in operating activities resulted from unfavorable changes in various other working capital accounts.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Investing activities</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our investing activities provided $46.6 million of cash during the nine months ended September 30, 2023, primarily due to the maturity of our short-term investment in U.S. treasury securities in June 2023, which provided cash of $102.3 million. We used $27.8 million in cash (net of cash received) for the FlexBiosys Acquisition. Capital expenditures consumed $27.8 million in 2023 as we continue to increase our manufacturing capacity worldwide. Of these expenditures, $2.7 million represented capitalized costs related to our internal-use software for the nine months ended September 30, 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our investing activities consumed $111.9 million of cash during the nine months ended September 30, 2022 mainly due to $67.0 million of capital expenditures in 2022 as we continue to increase our manufacturing capacity worldwide. Of these expenditures, $2.6 million represented capitalized costs related to our internal-use software for the nine months ended September 30, 2022. In addition, in September 2022, the Company paid a one-time, non-refundable, non-creditable upfront payment to Daylight as required under a License Agreement for the commercialization and sale of Culpeo</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> QCL-IR Liquid Analyzer.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financing activities</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our financing activities consumed $19.2 million of cash for the nine months ended September 30, 2023, primarily for $12.2 million in cash disbursed for shares withheld to cover employee income tax due upon the vesting and release of restricted stock units and the payment of $7.3 million to settle the cash portion of the First Earnout Year contingent earnout obligation related to our acquisition of Avitide in September 2021. This was partially offset by proceeds received from stock option exercises during the period.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our financing activities consumed $13.1 million of cash during the nine months ended September 30, 2022, which included cash disbursed in relation to shares withheld to cover employee income taxes due upon the vesting and release of restricted stock units of $15.8 million. This was partially offset by proceeds received from stock option exercises during the period of $2.8 million.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">    </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Working capital increased by $21.2 million to $615.1 million at September 30, 2023 from $593.9 million at December 31, 2022 due to the various changes noted above.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our future capital requirements will depend on many factors, including the following:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the expansion of our bioprocessing business;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the ability to sustain sales and profits of our bioprocessing products and successfully integrate them into our business;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">our ability to acquire additional bioprocessing products;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the scope of and progress made in our R&amp;D activities;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the scope of investment in our intellectual property portfolio;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">contingent consideration earnout payments resulting from our acquisitions;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the extent of any share repurchase activity; </span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the success of any proposed financing efforts;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">general economic and capital markets;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">change in accounting standards;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the impact of inflation on our operations, including our expenditures on raw materials and freight charges;</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">fluctuations in foreign currency exchange rates; and</span></div></div>
  <div style="margin-left:5.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:1.731%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:1.8285146883285621%;">&#x2022;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">costs associated with our ability to comply with, emerging environmental, social and governance standards.</span></div></div>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Absent acquisitions of additional products, product candidates or intellectual property, we believe our current cash balances are adequate to meet our cash needs for at least the next 24 months from the date of this filing. We expect operating expenses for the rest of the year to increase as we continue to expand our bioprocessing business. We expect to incur continued spending related to</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the development and expansion of our bioprocessing product lines and expansion of our commercial capabilities for the foreseeable future. Our future capital requirements may include, but are not limited to, purchases of property, plant and equipment, the acquisition of additional bioprocessing products and technologies to complement our existing manufacturing capabilities and continued investment in our intellectual property portfolio.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We plan to continue to invest in our bioprocessing business and in key R&amp;D activities associated with the development of new bioprocessing products. We actively evaluate various strategic transactions on an ongoing basis, including acquiring products, technologies or businesses that would complement our existing portfolio. We continue to seek to acquire such potential assets that may offer us the best opportunity to create value for our shareholders. In order to acquire such assets, we may need to seek additional financing to fund these investments. If our available cash balances and anticipated cash flow from operations are insufficient to satisfy our liquidity requirements, including because of any such acquisition-related financing needs or lower demand for our products, we may seek to sell common or preferred equity or convertible debt securities, enter into a credit facility or another form of third-party funding, or seek other debt funding. The sale of equity and convertible debt securities may result in dilution to our shareholders, and those securities may have rights senior to those of our common shares. If we raise additional funds through the issuance of preferred stock, convertible debt securities or other debt financing, these securities or other debt could contain covenants that would restrict our operations. Any other third-party funding arrangement could require us to relinquish valuable rights. We may require additional capital beyond our currently anticipated amounts. Additional capital may not be available on reasonable terms, if at all.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Net Operating Loss Carryforwards</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2022, the Company had federal net operating loss carryforwards of $42.9 million, state net operating loss carryforwards of $0.8 million and foreign net operating loss carryforwards of $4.9 million. Federal net operating loss carryforwards of $7.3 million will expire at various dates through 2037. The state net operating loss carryforwards will expire at various dates through 2041, while the foreign net operating loss carryforwards do not expire. The other $35.6 million of federal net operating loss carryforwards have unlimited carryforward periods. We had state business tax credits carryforwards of $3.8 million available to reduce future domestic income taxes. The state business tax credits carryforwards will expire at various dates through 2042. Net operating loss and business tax credit carryforwards are subject to review and possible adjustment by the Internal Revenue Service, state and foreign tax authorities and may be limited in the event of certain changes in the ownership interest of significant shareholders.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Effects of Inflation</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our assets are primarily monetary, consisting of cash, cash equivalents and marketable securities. Because of their liquidity, these assets are not directly affected by inflation. Since we intend to retain and continue to use our equipment, furniture, fixtures and office equipment, computer hardware and software and leasehold improvements, we believe that the incremental inflation related to replacement costs of such items will not materially affect our operations. However, the rate of inflation affects our expenses, such as those for employee compensation and contract services, which could increase our level of expenses and the rate at which we use our resources.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Cautionary Statement Regarding Forward-Looking Statements</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">This Quarterly Report on Form 10-Q contains forward-looking statements which are made pursuant to the safe harbor provisions of Section 27A of the Securities Act of 1933, as amended, and Section 21E of the Securities Exchange Act of 1934, as amended (the &#x201c;Exchange Act&#x201d;). The forward-looking statements in this Quarterly Report on Form 10-Q do not constitute guarantees of future performance. Investors are cautioned that statements in this Quarterly Report on Form 10-Q which are not strictly historical statements, including, without limitation, express or implied statements or guidance regarding current or future financial performance and position, potential impairment of future earnings, management&#x2019;s strategy, plans and objectives for future operations or acquisitions, expectations and beliefs for recently-completed acquisitions, product development and sales, restructuring activities and the expected results thereof, product candidate research, development and regulatory approval, SG&amp;A expenditures, intellectual property, development and manufacturing plans, availability of materials and product and adequacy of capital resources, our financing plans and the projected continued impact of, and response to, COVID-19 constitute forward-looking statements. These forward-looking statements are based on current expectations, estimates, forecasts and projections about the industry and markets in which the Company operates, and management&#x2019;s beliefs and assumptions. The Company undertakes no obligation to publicly update or revise the statements in light of future developments. In addition, other written and</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">32</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">oral statements that constitute forward-looking statements may be made by the Company or on the Company&#x2019;s behalf. Words such as &#x201c;expect,&#x201d; &#x201c;seek,&#x201d; &#x201c;anticipate,&#x201d; &#x201c;intend,&#x201d; &#x201c;plan,&#x201d; &#x201c;believe,&#x201d; &#x201c;could,&#x201d; &#x201c;estimate,&#x201d; &#x201c;may,&#x201d; &#x201c;target,&#x201d; &#x201c;project,&#x201d; or variations of such words and similar expressions are intended to identify forward-looking statements. Such forward-looking statements are subject to a number of risks and uncertainties that could cause actual results to differ materially from those anticipated, including, without limitation, risks associated with the following: the success of current and future collaborative or supply relationships, including our agreements with Cytiva, MilliporeSigma and Purolite Life Sciences, an Ecolab Inc. company; our ability to successfully grow our bioprocessing business, including as a result of acquisitions, commercialization or partnership opportunities, and our ability to develop and commercialize products; our ability to obtain required regulatory approvals; our compliance with all U.S. Food and Drug Administration regulations, our ability to obtain, maintain and protect intellectual property rights for our products; the risk of litigation regarding our patent and other intellectual property rights; the risk of litigation with collaborative partners; our manufacturing capabilities and our dependence on third-party manufacturers and value-added resellers; our ability to hire and retain skilled personnel; the market acceptance of our products, reduced demand for our products that adversely impacts our future revenues, cash flows, results of operations and financial condition; our ability to integrate acquired businesses successfully into our business and achieve the expected benefits of the acquisitions; our ability to compete with larger, better financed life sciences companies; our history of losses and expectation of incurring losses; our ability to generate future revenues; our ability to successfully integrate our recently acquired businesses; our ability to raise additional capital to fund potential acquisitions; our volatile stock price; and the effects of our anti-takeover provisions. Further information on potential risk factors that could affect our financial results are included in the filings made by us from time to time with the SEC including under the sections entitled &#x201c;Risk Factors&#x201d; in our Form 10-K.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:-11.441%;padding-left:10.267%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item3_quantitative_and_qualitative"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM 3. QUANTITATIVE AND QUAL</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITATIVE DISCLOSURES ABOUT MARKET RISK</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Interest Rate Risk</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have historically held investments in commercial paper, U.S. treasury and government securities as well as corporate bonds and other debt securities. As a result, we have been exposed to potential loss from market risks that may occur as a result of changes in interest rates, changes in credit quality of the issuer or otherwise. Our investment portfolio consists of cash and cash equivalents (cash and money market funds) that total $630.8 million at September 30, 2023. We held marketable securities (U.S. treasury bills) of $100.3 million, which were included in short-term marketable securities on the consolidated balance sheet as of December 31, 2022. These marketable securities matured in June 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our cash equivalent investments (money market funds) have short-term maturity periods that dampen the impact of market or interest rate risk. As a result, a hypothetical 100 basis point increase in interest rates would have no effect on our cash position as of September 30, 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We manage our investment portfolio in accordance with our investment policy or approval by the Board of Directors. The primary objectives of our investment policy are to preserve principal, maintain a high degree of liquidity to meet operating and other needs, and obtain competitive returns subject to prevailing market conditions without significantly increasing risk. To achieve this objective, we maintain our portfolio of cash equivalents and marketable securities in high-quality securities, including money market funds and U.S. treasury bills. The U.S. treasury bills were classified as held-to-maturity at December 31, 2022 and consequently were recorded at amortized cost on our consolidated balance sheet in accordance with accounting principles generally accepted in the United States. These marketable securities matured in June 2023. We do not expect any material loss from our marketable security investments and therefore believe that our potential interest rate exposure is limited.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Foreign Exchange Risk</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The reporting currency of the Company is U.S. dollars, and the functional currency of each of our foreign subsidiaries is its respective local currency. Our foreign currency exposures include the Swedish krona, Euro, British pound, Chinese yuan, Japanese yen, Singapore dollar, South Korean won and Indian rupee; of these, the primary foreign currency exposures are the Swedish krona, Euro and Chinese yuan. Exchange gains or losses resulting from the translation between the transactional currency and the functional currency are included in net income. Fluctuations in exchange rates may adversely affect our results of operations, financial position and cash flows. We currently do not seek to hedge this exposure to fluctuations in exchange rates.</span></p>
  <p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item4_controls_procedures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM 4. CONTROLS AN</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">D PROCEDURES</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Disclosure Controls and Procedures</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company&#x2019;s management, with the participation of the principal executive officer and the principal financial officer, has evaluated the effectiveness of the Company&#x2019;s disclosure controls and procedures (as defined in Rules 13a-15(e) or 15d-15(e) under the Exchange Act) as of the end of the period covered by this report. Based on such evaluation, the principal executive officer and principal financial officer have concluded that, as of the end of such period, the Company&#x2019;s disclosure controls and procedures were effective at the reasonable assurance level.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Changes in Internal Control</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with our initiative to integrate and enhance our global information technology systems and business processes, we continued the phased implementation of a new enterprise resource planning (&#34;ERP&#34;) system. The Company is implementing the ERP system in phases through 2024. The implementation of the ERP system is expected to, among other things, automate a number of accounting and reporting processes and activities, thereby decreasing the amount of manual processes previously required. As a result of this implementation, we modified certain existing internal controls over financial reporting as well as implemented new controls and procedures related to the new ERP systems.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other than the foregoing, there have been no changes in our internal control over financial reporting identified in connection with the evaluation required by paragraph (d) of Exchange Act Rule 13a-15 or Rule 15d-15 that occurred in the three months ended September 30, 2023 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="part_ii_other_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART II. OTHER INFORMATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item1_legal_proceedings"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;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;min-width:fit-content;">AL PROCEEDINGS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">From time to time, we may be subject to legal proceedings and claims in the ordinary course of business. We are not currently aware of any such proceedings or claims that we believe will have, individually or in the aggregate, a material adverse effect on our business, financial condition or results of operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item1a_risk_factors"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM  1A. RISK</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> FACTORS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The matters discussed in this Quarterly Report on Form 10-Q include forward-looking statements that involve risks or uncertainties. These statements are neither promises nor guarantees, but are based on various assumptions by management regarding future circumstances, over many of which Repligen has little or no control. A number of important risks and uncertainties, including those identified under the caption </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#x201c;Risk Factors&#x201d;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Part I, Item 1A of our Form 10-K for the period ended December 31, 2022 and in subsequent filings, including this Quarterly Report on Form 10-Q, could cause our actual results to differ materially from those in the forward-looking statements. Other than as indicated below, there are no material changes to the risk factors described in our Form 10-K for the period ended December 31, 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Our corporate restructuring and the associated headcount reduction may not result in anticipated savings, could result in total costs and expenses that are greater than expected and could disrupt our business.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In July 2023, our Board of Directors authorized the Company's management team to undertake restructuring activities to simplify and streamline our organization and strengthen the overall effectiveness of our operations (the &#34;Restructuring Plan&#34;). As part of the Restructuring Plan, we are consolidating a portion of our manufacturing business between certain U.S. locations and also are reducing our headcount. We may not realize, in full or in part, the anticipated benefits, savings and improvements in our cost structure from our restructuring efforts due to unforeseen difficulties, delays or unexpected costs. If we are unable to realize the expected operational efficiencies and cost savings from the restructuring, our operating results and financial condition could be adversely affected. Furthermore, the Restructuring Plan may be disruptive to our operations. For example, our headcount reductions could yield unanticipated consequences, such as increased difficulties in implementing our business strategy, including retention of our remaining employees.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Adverse developments affecting the financial services industry, such as actual events or concerns involving liquidity, defaults, or non-performance by financial institutions or transactional counterparties, could adversely affect our current and projected business operations and our financial condition and results of operations.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Actual events involving limited liquidity, defaults, non-performance or other adverse developments that affect financial institutions, transactional counterparties or other companies in the financial services industry or the financial services industry generally, or concerns or rumors about any events of these kinds or other similar risks, have in the past and may in the future lead to market-wide liquidity problems. For example, on March 10, 2023, Silicon Valley Bank (&#x201c;SVB&#x201d;) was closed by the California Department of Financial Protection and Innovation, which appointed the Federal Deposit Insurance Corporation (&#x201c;FDIC&#x201d;) as receiver. Since that date, SVB has announced they have been acquired by First Citizens Bank and have resumed mostly normal operations. Similarly, on March 12, 2023, Signature Bank and Silvergate Capital Corp. were each swept into receivership.  If any of our lenders or counterparties to any such instruments were to be placed into receivership, we may be unable to access such funds. We have a banking relationship with SVB and hold cash, cash equivalents and marketable securities of less than $0.1 million as of September 30, 2023 in SVB depository accounts to cover short-term operational payments. While we have not experienced any losses in such accounts, the recent failure of SVB caused us to utilize our accounts at other financial institutions in order to mitigate potential operational risks stemming from the temporary inability to access funds in our SVB operating accounts. In addition, if any of our customers, suppliers or other parties with whom we conduct business are unable to access funds pursuant to such instruments or lending arrangements with such a financial institution, such parties&#x2019; ability to pay their obligations to us or to enter into new commercial arrangements requiring additional payments to us could be adversely affected.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inflation and rapid increases in interest rates have led to a decline in the trading value of previously issued government securities with interest rates below current market interest rates. Although the U.S. Department of Treasury, FDIC and Federal Reserve Board have announced a program to provide up to $25 billion of loans to financial institutions secured by certain of such government securities held by financial institutions to mitigate the risk of potential losses on the sale of such instruments,</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">widespread demands for customer withdrawals or other liquidity needs of financial institutions for immediately liquidity may exceed the capacity of such program. Additionally, there is no guarantee that the U.S. Department of Treasury, FDIC and Federal Reserve Board will provide access to uninsured funds in the future in the event of the closure of other banks or financial institutions, or that they would do so in a timely fashion.</span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Although we assess our banking and customer relationships as we believe necessary or appropriate, our access to funding sources and other credit arrangements in amounts adequate to finance or capitalize our current and projected future business operations could be significantly impaired by factors that affect the Company, the financial institutions with which the Company has credit agreements or arrangements directly, or the financial services industry or economy in general.  These factors could include, among others, events such as liquidity constraints or failures, the ability to perform obligations under various types of financial, credit or liquidity agreements or arrangements, disruptions or instability in the financial services industry or financial markets, or concerns or negative expectations about the prospects for companies in the financial services industry.  These factors could involve financial institutions or financial services industry companies with which the Company has financial or business relationships, but could also include factors involving financial markets or the financial services industry generally. The results of events or concerns that involve one or more of these factors could include a variety of material and adverse impacts on our current and projected business operations and our financial condition and results of operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, investor concerns regarding the U.S. or international financial systems could result in less favorable commercial financing terms, including higher interest rates or costs and tighter financial and operating covenants, or systemic limitations on access to credit and liquidity sources, thereby making it more difficult for us to acquire financing on acceptable terms or at all. Any decline in available funding or access to our cash and liquidity resources could, among other risks, adversely impact our ability to meet our operating expenses, financial obligations or fulfill our other obligations, result in breaches of our financial and/or contractual obligations or result in violations of federal or state wage and hour laws. Any of these impacts, or any other impacts resulting from the factors described above or other related or similar factors not described above, could have material adverse impacts on our liquidity and our current and/or projected business operations and financial condition and results of operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, any further deterioration in the macroeconomic economy or financial services industry, could lead to losses or defaults by our suppliers, which in turn, could have a material adverse effect on our current and/or projected business operations and results of operations and financial condition.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item2_unregistered_sales"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM  2. UNREGISTERED SALES OF EQU</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I</span><span id="item_2_unregistered_sales_of_equity_se"></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">TY SECURITIES AND USE OF PROCEEDS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item3_defaults_upon_senior_securities"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM  3. DEFAULTS UPON SEN</span><span id="item3_defaults"></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">IOR SECURITIES</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item4_mine_safety_disclosures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM  4. MINE SAFETY DI</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">SCLOSURES</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Not applicable.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item5_other_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM  5. OTHER INF</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ORMATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div><ix:nonNumeric id="F_ae466b99-36ac-4867-8a5e-42dea3c35feb" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="ecd:MtrlTermsOfTrdArrTextBlock" escape="true"><p style="margin-left:3.333%;text-indent:0;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_38f1b586-8268-4c99-8aa5-0f1e0365a575" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="ecd:Rule10b51ArrAdoptedFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_b44ee00c-7dd5-4fe9-9a10-5f4e5e924ddf" contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67" name="ecd:Rule10b51ArrTrmntdFlag" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None</span></ix:nonNumeric></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of the Company's directors or officers (as defined in Rule 16a-1(f) of the Securities Exchange Act of 1934) adopted, modified, or terminated a Rule 10(b)5-1 trading arrangement during the Company's fiscal quarter ended September 30, 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <p style="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-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item6_exhibits"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ITEM 6. EXHI</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">BITS</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">(a)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Exhibits</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></div></div>
  <p style="margin-left:3.333%;text-indent:0;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:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:10%;"></td>
    <td style="width:1%;"></td>
    <td style="width:89%;"></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:1pt solid #000000;padding-right:0.01in;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Exhibit</span></p><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Number</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:1pt solid #ffffff03;padding-right:0.01in;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:1pt solid #000000;padding-right:0.01in;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Document Description</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;"><p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.1</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/730272/000091205799005920/0000912057-99-005920.txt"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restated Certificate of Incorporation, dated June 30, 1992 and amended September 17, 1999 (filed as Exhibit 3.1 to Repligen Corporation&#x2019;s Quarterly Report on Form 10-Q for the quarter ended September 30, 1999 and incorporated herein by reference).</span></a></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.2</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/730272/000119312514203828/d730087dex31.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certificate of Amendment to the Certificate of Incorporation of Repligen Corporation, effective as of May 16, 2014 (filed as Exhibit 3.1 to Repligen Corporation&#x2019;s Current Report on Form 8-K filed on May 19, 2014 and incorporated herein by reference)</span></a><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p></td>
   </tr>
   <tr>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.3</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/730272/000119312523150037/d444083dex31.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certificate of Amendment to the Certificate of Incorporation of Repligen Corporation, effective as of May 19, 2023 (filed as Exhibit 3.1 to Repligen Corporation's Current Report on Form 8-K filed on May 22, 2023 and incorporated herein by reference).</span></a></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.4</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/730272/000119312521020747/d117561dex31.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Third Amended and Restated Bylaws (filed as Exhibit 3.1 to Repligen Corporation&#x2019;s Current Report on Form 8-K filed on January 28, 2021 and incorporated herein by reference).</span></a></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10.1+&#134;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="rgen-ex10_1.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Employment Agreement, dated as of September 8, 2023, by and between Repligen Corporation and Oliver Loeillot</span></a><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p></td>
   </tr>
   <tr>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10.2&#134;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/730272/000119312523233111/d554431dex101.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Employment Agreement, dated as of September 8, 2023, by and between Repligen Corporation and Jason K. Garland (filed as Exhibit 10.1 to Repligen Corporation's Current Report on Form 8-K filed on September 12, 2023 and incorporated herein by reference).</span></a></p></td>
   </tr>
   <tr>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31.1 +</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="rgen-ex31_1.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Rule 13a-14(a)/15d-14(a) Certification.</span></a></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31.2 +</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="rgen-ex31_2.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Rule 13a-14(a)/15d-14(a) Certification.</span></a></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">32.1 *</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><a href="rgen-ex32_1.htm"><span style="color:#0000ff;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certification 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;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101.INS+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">XBRL Instance Document &#x2013; the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101.SCH+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inline XBRL Taxonomy Extension Schema Document.</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101.CAL+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inline XBRL Taxonomy Extension Calculation Linkbase Document.</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101.DEF+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inline XBRL Taxonomy Extension Definition Linkbase Document.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101.LAB+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inline XBRL Taxonomy Extension Label Linkbase Document.</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101.PRE+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inline XBRL Taxonomy Extension Presentation Linkbase Document.</span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:0.7pt;">
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">104+</span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;word-break:break-word;white-space:pre-wrap;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cover Page Interactive Data File (formatted as Inline XBRL with applicable taxonomy extension information contained in Exhibits 101.*).</span></p></td>
   </tr>
  </table>
  <p style="margin-left:3.333%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:3pt;border-bottom:0.75pt solid;margin-right:83.333%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">+ Filed herewith.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">* Furnished herewith.</span></p>
  <p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#134; Indicates a management contract or a compensatory plan, contract or arrangement.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">37</span></p>
  <hr style="page-break-after:always;" />
  <p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="signatures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">SIGNAT</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">URES</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:42.42%;"></td>
    <td style="width:9.1%;"></td>
    <td style="width:6.06%;"></td>
    <td style="width:42.42%;"></td>
   </tr>
   <tr>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td colspan="2" style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">REPLIGEN CORPORATION</span></p></td>
   </tr>
   <tr style="height:12.25pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="text-indent:18pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:18pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: October 31, 2023</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">By:</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">S</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/ T</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ONY</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;J. H</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">UNT</span></p><p style="border-top:1pt solid;padding-top:1pt;text-indent:0;font-size:10pt;margin-top:1pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Tony J. Hunt</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Chief Executive Officer</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">(Principal executive officer)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Repligen Corporation</span></p></td>
   </tr>
   <tr style="height:12.25pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="text-indent:18pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:18pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: October 31, 2023</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">By:</span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">S</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/ JASON K. GARLAND</span></p><p style="border-top:1pt solid;padding-top:1pt;text-indent:0;font-size:10pt;margin-top:1pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Jason K. Garland</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Chief Financial Officer</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">(Principal financial officer)</span></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;padding-left:0.1in;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top: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;min-width:fit-content;">Repligen Corporation</span></p></td>
   </tr>
  </table>
  <p style="text-indent:0;font-size:10pt;margin-top:18pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">38</span></p>
  <hr style="page-break-after:always;" />
 </body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.1
<SEQUENCE>2
<FILENAME>rgen-ex10_1.htm
<DESCRIPTION>EX-10.1
<TEXT>
<html>
 <head>
  <title>EX-10.1</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <p style="text-indent:0;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-style:italic;min-width:fit-content;">		Exhibit 10.1</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">EMPLOYMENT AGREEMENT</font></p>
  <p style="text-indent:3.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">This Employment Agreement (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Agreement</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) is made as of  September 8, 2023 between Repligen Corporation, a Delaware corporation (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Company</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), and Olivier Loeillot (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Executive</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) and shall become effective on the first date of the Executive&#x2019;s employment with the Company, which date is currently anticipated to be October 1, 2023 (such date, or another date if mutually agreed by the parties in writing, the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effective Date</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).</font></p>
  <p style="text-indent:3.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">WHEREAS, the Company wishes to employ the Executive, and the Executive wishes to be employed, pursuant to the terms described herein.</font></p>
  <p style="text-indent:3.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOW, THEREFORE, in consideration of the mutual covenants and agreements herein contained and other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the parties agree as follows:</font></p>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Employment</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Position and Duties</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive shall serve as the President and Chief Commercial Officer of the Company and shall have such other powers and duties as may from time to time be prescribed by the Company&#x2019;s Chief Executive Officer (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CEO</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;). The Executive shall devote his full working time and efforts to the business and affairs of the Company.  </font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Compensation and Related Matters</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Base Salary</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  As of the Effective Date, the Executive&#x2019;s annual base salary rate is $600,000.  The Executive&#x2019;s base salary shall be redetermined annually by the Compensation Committee (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Compensation Committee</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) of the Board of Directors of the Company (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Board</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).  The base salary in effect at any given time is referred to herein as &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Base Salary</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.&#x201d;  The Base Salary shall be payable in a manner that is consistent with the Company&#x2019;s usual payroll practices for senior executives.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Annual Bonus</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive shall be eligible to receive an annual performance bonus under the Company&#x2019;s Executive Incentive Compensation Plan (or such other applicable plan or program adopted by the Company) (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Bonus Plan</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).  The Executive&#x2019;s target annual bonus shall initially be 75% of the Base Salary.  The actual bonus will be subject to the Compensation Committee&#x2019;s assessment of the Executive&#x2019;s performance, as well as business conditions at the Company.  The bonus also will be subject to approval by and adjustment at the discretion of the Compensation Committee and the terms of the Bonus Plan.  The annual performance bonus, if any, shall be paid between January 1 and March 15 of the calendar year following the applicable bonus year.  The Board expects to review the Executive&#x2019;s job performance and responsibilities on at least an annual basis and will discuss with the Executive the criteria which the Compensation Committee will use to assess the Executive&#x2019;s performance for bonus purposes.  The Compensation Committee also may make adjustments in the targeted amount of the Executive&#x2019;s annual performance bonus.  Any annual bonus for the year in which the Effective Date occurs shall be prorated based on when in the year the Effective Date occurs.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Signing Bonus</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  Within 30 days after the Effective Date, the Company will pay the Executive a one-time cash award in a lump sum of $1,350,000 (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Signing Bonus</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).  If the Executive resigns without Good Reason or is terminated by the Company for Cause (in each case as defined in the Severance Plan, as defined below), in either case on or prior to December 31, 2024, the Executive shall repay a prorated portion of the Signing Bonus, after taxes (prorated by multiplying the Signing Bonus amount by a fraction, the numerator of which is the number of days between the Effective Date and the Date of Termination (as defined below) and the denominator of which is the number of days between the Effective Date and December 31, 2024) to the Company by no later than 14 days after the Date of Termination.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Initial and 2024 Equity Awards.</font></div></div>
  <div style="margin-left:6.667%;text-indent:14.286%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.8575102053935906%;">(i)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Subject to Compensation Committee approval, the Company shall grant the Executive an option to purchase shares of the Company&#x2019;s Common Stock (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Option Grant</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), and a restricted stock unit award (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">RSU Grant</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; and collectively with the Option Grant, the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Initial Equity Awards</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;)) under </font></div></div>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:6.667%;text-indent:0;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the Company&#x2019;s 2018 Stock Option and Incentive Plan (as may be amended from time to time, the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Plan</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;). The aggregate grant date fair value of the Initial Equity Awards shall be $4 million and shall be split equally (based on grant date fair value, with the grant date fair value of the Option Grant determined using a Black-Scholes methodology and the Company&#x2019;s customary assumptions therefor) between the Option Grant and the RSU Grant.  The Initial Equity Awards shall vest and become exercisable or nonforfeitable (as applicable) in equal installments on each of the first, second, third, fourth and fifth anniversaries of the Effective Date, subject to the Executive&#x2019;s continued employment with the Company through the applicable vesting date.  The Initial Equity Awards shall be subject to the terms and conditions set forth in the Plan and in the Stock Option Agreement and Restricted Stock Unit Award Agreements memorializing the terms of the Initial Equity Awards.</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </font></div></div>
  <div style="margin-left:6.667%;text-indent:14.286%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.8575102053935906%;">(ii)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Subject to Compensation Committee approval and the Executive&#x2019;s continued employment as President and Chief Commercial Officer through the grant date, the Company shall grant the Executive an annual equity award for 2024 in connection with the Executive&#x2019;s role as President and Chief Commercial Officer, with 50% of the grant in the form of time-based restricted stock units, 25% of the grant in the form of options to purchase the Company&#x2019;s Common Stock and 25% of the grant in the form of performance-based restricted stock units (in each case, based on grant date fair value) (collectively, the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2024 Equity Awards</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).  The 2024 Equity Awards will be awarded when annual equity awards are granted to other senior executives of the Company.  The aggregate grant date fair value of the 2024 Equity Awards shall be $1 million.  The 2024 time-based restricted stock units and 2024 stock option grant shall vest and become exercisable or nonforfeitable (as applicable) in equal installments on each of the first, second and third anniversaries of the grant date, subject to Executive&#x2019;s continued employment with the Company through the applicable vesting date.  The 2024 performance-based restricted stock units will be earned and vest based upon the achievement of performance criteria to be discussed with the Executive and determined by the Compensation Committee, subject to the Executive&#x2019;s continued employment with the Company through the applicable vesting date(s).  The 2024 Equity Awards shall be subject to the terms and conditions set forth in the Plan and the stock option agreement and time- and performance-based restricted stock unit award agreements.  </font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(e)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Additional Equity Awards</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive may be eligible to receive additional incentive equity awards under the Company&#x2019;s executive incentive plans or programs (each such plan or program, an &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">LTI Plan</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).  Any actual awards under any LTI Plan (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">LTI Awards</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) are discretionary and will be subject to the Board&#x2019;s assessment of the Executive&#x2019;s performance, as well as business conditions at the Company.  Any LTI Awards will be subject to approval by and adjustment at the discretion of the Compensation Committee and the terms of any applicable LTI Plan.  The Executive will be eligible to participate in the Company&#x2019;s equity incentive program as may be in effect from time to time in accordance with the terms determined by the Compensation Committee.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(f)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Expenses</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive shall be entitled to receive prompt reimbursement for all reasonable expenses incurred by him during the term of his employment and in performing services hereunder, in accordance with the policies and procedures then in effect and established by the Company for its senior executive officers.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(g)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other Benefits</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive shall be eligible to participate in or receive benefits under the Company&#x2019;s employee benefit plans in effect from time to time, subject to the terms of such plans, which benefits include, but are not limited to, medical, dental and vision care coverage, short- and long-term disability and life insurance, and participation in the Company&#x2019;s 401(k) plan.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(h)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vacations</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive shall be entitled paid time off (vacation/personal days) each year in accordance with the Company&#x2019;s vacation policy as in effect from time to time.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Termination</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive&#x2019;s employment hereunder may be terminated without any breach of this Agreement under the following circumstances:</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Death</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive&#x2019;s employment hereunder shall terminate upon his death.</font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Disability</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Company may terminate the Executive&#x2019;s employment if he is disabled and unable to perform the essential functions of the Executive&#x2019;s then existing position or positions under this Agreement with or without reasonable accommodation for a period of 180 days (which need not be consecutive) in any 12-month period.  If any question shall arise as to whether during any period the Executive is disabled so as to be unable to perform the essential functions of the Executive&#x2019;s then existing position or positions with or without reasonable accommodation, the Executive may, and at the request of the Company shall, submit to the Company a certification in reasonable detail by a physician selected by the Company to whom the Executive or the Executive&#x2019;s guardian has no reasonable objection as to whether the Executive is so disabled or how long such disability is expected to continue, and such certification shall for the purposes of this Agreement be conclusive of the issue.  The Executive shall cooperate with any reasonable request of the physician in connection with such certification.  If such question shall arise and the Executive shall fail to submit such certification, the Company&#x2019;s determination of such issue shall be binding on the Executive.  Nothing in this Section 3(b) shall be construed to waive the Executive&#x2019;s rights, if any, under existing law including, without limitation, the Family and Medical Leave Act of 1993, 29 U.S.C. &#167;2601 </font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">et seq</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. and the Americans with Disabilities Act, 42 U.S.C. &#167;12101 </font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">et seq.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Termination by Company for Cause</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Company may terminate the Executive&#x2019;s employment hereunder for Cause.  For purposes of this Agreement, &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cause</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; is defined in the Severance Plan.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Termination Without Cause</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Company may terminate the Executive&#x2019;s employment hereunder at any time without Cause.  Any termination by the Company of the Executive&#x2019;s employment under this Agreement which does not constitute a termination for Cause under Section 3(c) and does not result from the death or disability of the Executive under Section 3(a) or (b) shall be deemed a termination without Cause.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(e)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Termination by the Executive</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive may terminate his employment hereunder at any time for any reason, including but not limited to Good Reason.  For purposes of this Agreement, &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Good Reason</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; is defined in the Severance Plan.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(f)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Notice of Termination</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  Except for termination as specified in Section 3(a), any termination of the Executive&#x2019;s employment by the Company or any such termination by the Executive shall be communicated by written Notice of Termination in accordance with Section 6(f) of the Severance Plan.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(g)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date of Termination</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date of Termination</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; is defined in the Severance Plan.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Compensation Upon Termination</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  As of the Effective Date, the Executive shall be eligible as an &#x201c;NEO Participant&#x201d; under the Repligen Corporation Amended And Restated Severance And Change In Control Plan (such Plan as in effect from time to time is the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Severance Plan</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.&#x201d;)  The current version of the Severance Plan is attached hereto as </font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit A</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Confidential Information, Invention Assignment, Noncompetition, Nonsolicitation and Cooperation</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Confidential Information</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  As used in this Agreement, &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Confidential Information</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means information belonging to the Company which is of value to the Company in the course of conducting its business and the disclosure of which could result in a competitive or other disadvantage to the Company.  Confidential Information includes, without limitation, financial information, reports, and forecasts; inventions, improvements and other intellectual property; trade secrets; know-how; designs, processes or formulae; software; market or sales information or plans; customer lists; and business plans, prospects and opportunities (such as possible acquisitions or dispositions of businesses or facilities) which have been discussed or considered by the management of the Company.  Confidential Information includes information developed by the Executive in the course of the Executive&#x2019;s employment by the Company, as well as other information to which the Executive may have access in connection with the Executive&#x2019;s employment.  Confidential Information also includes the confidential information of others with which the Company has a business relationship.  Notwithstanding the foregoing, Confidential Information does not include information in the public domain, unless due to breach of the Executive&#x2019;s duties under Section 5(b) (&#x201c;Confidentiality&#x201d;).</font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Confidentiality</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive understands and agrees that the Executive&#x2019;s employment creates a relationship of confidence and trust between the Executive and the Company with respect to all Confidential Information.  At all times, both during the Executive&#x2019;s employment with the Company and after its termination, the Executive will keep in confidence and trust all such Confidential Information, and will not use or disclose any such Confidential Information without the written consent of the Company, except as may be necessary in the ordinary course of performing the Executive&#x2019;s duties to the Company.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Invention Assignment</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  While employed by the Company and when the Executive ceases to be employed by the Company for any reason, the Executive promptly and fully shall disclose in writing to the Company and hold in trust for the sole right and benefit of the Company, all ideas, plans, designs, methods, scripts, concepts, recordings, techniques, discoveries, inventions, developments, improvements, trade secrets, advertising and promotional materials, computer systems, programs, software, source codes, and object codes, specifications, and other proprietary data, records, knowledge, and information that the Executive solely or jointly knows, creates, conceives, develops, or reduces to practice while employed by the Company, if and to the extent they (a) relate to the business of the Company or any customer of, supplier to or business partner of the Company or any of the products or services being researched, developed, manufactured or sold by the Company or which may be used with such products or services; or (b) result from tasks assigned to the Executive by the Company or the work performed by the Executive for the Company; or (c) result from the use of premises or personal property (whether tangible or intangible) owned, leased or contracted for by the Company (collectively, &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intellectual Property</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), whether or not patentable or capable of copyright or trademark registration, and whether or not created, conceived, developed, or reduced to practice during normal working hours, at the request of the Company, or before or after the execution date of this Agreement.  By executing this Agreement, the Executive acknowledges that all work performed by the Executive is on a &#x201c;work for hire&#x201d; basis, and Executive assigns and transfers unconditionally all of the Executive&#x2019;s right, title, and interest in and to all Intellectual Property to the Company.  While employed by the Company and at all times thereafter, the Executive shall do all things, and execute all documents, including applications for patents, copyrights, and trademarks, and for renewals, extensions, and divisions thereof, that the Company may request to create, enforce, or evidence the Company&#x2019;s rights to any Intellectual Property.  If the Company is unable for any reason whatsoever to obtain the Executive&#x2019;s signature or assistance, the Executive irrevocably appoints the Company, and each of its officers, as the Executive&#x2019;s agent and attorney-in-fact, with full power of substitution, to sign, execute, and file in the name and behalf of Employee any document required to prosecute or apply for any foreign or United States patent, copyright, trademark, or other proprietary protection, including renewals, extensions, and divisions, and to do all other lawful acts to further the issuance or prosecution of a patent, copyright, trademark, or other proprietary protection, all with the same legal force and effect as if done or executed by the Executive.  To preclude any possible uncertainty, if there are any intellectual property rights that the Executive has, alone or jointly with others, conceived, developed or reduced to practice prior to the commencement of the Executive&#x2019;s employment with the Company that the Executive considers to be the Executive&#x2019;s property or the property of third parties and that the Executive wishes to have excluded from the scope of this Agreement (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prior Inventions</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), the Executive has provided the Company with a complete list of those Prior Inventions.  If disclosure of any such Prior Invention would cause the Executive to violate any prior confidentiality agreement, the Executive understands that the Executive is not to list such Prior Inventions but is only to disclose a cursory name for each such invention, a listing of the party(ies) to whom it belongs and the fact that full disclosure as to such inventions has not been made for that reason.  If there are any patents or patent applications in which the Executive is named as an inventor, other than those that have been assigned to the Company (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other Patent Rights</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), the Executive has also provided a list of those Other Patent Rights to the Company.  If no such disclosure is provided to the Company, the Executive represents that there are no Prior Inventions or Other Patent Rights.  If, in the course of the Executive&#x2019;s employment with the Company, the Executive incorporates a Prior Invention into a Company product, process or machine, research or development program, or other work done for the Company, the Executive hereby grants to the Company a nonexclusive, royalty-free, fully paid-up, irrevocable, worldwide license (with the full right to sublicense directly and indirectly through multiple tiers) to make, have made, modify, use, sell, offer for sale and import such Prior Invention.  Notwithstanding the foregoing, the Executive will not incorporate, or permit to be incorporated, Prior Inventions in any Company Intellectual Property without the Company&#x2019;s prior written consent</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Documents, Records, etc</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  All documents, records, data, apparatus, equipment and other physical property, whether or not pertaining to Confidential Information, which are furnished to the Executive by the Company or are produced by the Executive in connection with the Executive&#x2019;s employment will be and remain </font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:0;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the sole property of the Company.  The Executive will return to the Company all such materials and property as and when requested by the Company.  In any event, the Executive will return all such materials and property immediately upon termination of the Executive&#x2019;s employment for any reason.  The Executive will not retain with the Executive any such material or property or any copies thereof after such termination.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(e)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Noncompetition and Nonsolicitation</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive understands that the restrictions set forth in this Section 5(e) are intended to protect the Company&#x2019;s interest in its Confidential Information and established employee, customer and supplier relationships and goodwill, and agrees that such restrictions are reasonable and appropriate for this purpose.  </font></div></div>
  <div style="margin-left:6.667%;text-indent:14.286%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.8575102053935906%;">(i)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the Executive&#x2019;s employment with the Company and for 12 months thereafter, regardless of the reason for the termination (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Noncompete Restricted Period</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), the Executive will not, directly or indirectly, whether as owner, partner, shareholder, consultant, agent, employee, co-venturer or otherwise, engage, participate, assist or invest in any Competing Business (as hereinafter defined).  Notwithstanding this foregoing Section 5(e)(i), the Executive shall not be subject to the restrictions of this Section 5(e)(i) after the Executive&#x2019;s employment with the Company ends (nor entitled to the Noncompetition Consideration set forth below) if the Company terminates the Executive&#x2019;s employment without Noncompete Cause or lays the Executive off.  For its part, the Company agrees to provide the Noncompetition Consideration to the Executive in exchange for the Executive&#x2019;s post-employment obligations under this Section 5(e)(i); </font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">provided </font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">that the Company may waive its rights under this Section 5(e)(i) and in such event, the Company shall not be obligated to provide the Noncompetition Consideration.  The Executive acknowledges that this covenant is necessary because the Company&#x2019;s legitimate business interests cannot be adequately protected solely by the other covenants in this Agreement.  The Executive further acknowledges and agrees that any payments the Executive receives pursuant to this Section 5(e)(i) shall reduce (and shall not be in addition to) any severance or separation pay that the Executive is otherwise entitled to receive from the Company pursuant to an agreement, plan (including the Severance Plan referred to in this Agreement) or otherwise.  Notwithstanding the foregoing, (I) the Executive may own up to two percent (2%) of the outstanding stock of a publicly held corporation which constitutes or is affiliated with a Competing Business; and (II) after the Executive&#x2019;s employment with the Company ends, the Executive may join other boards of directors or serve companies in an Advisor capacity (collectively, &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Permitted Advisor Service</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), except that the Executive may not engage in Permitted Advisor Service during the Noncompete Restricted Period with respect to the following companies: Danaher, Thermo, Sartorius and Merck Millipore.  The Executive acknowledges and agrees that (A) the Executive received this Agreement at least ten (10) business days before the commencement of the Executive&#x2019;s employment with the Company; and (B) the Executive has been advised by the Company that the Executive has the right to consult with counsel prior to signing this Agreement.</font></div></div>
  <div style="margin-left:6.667%;text-indent:14.286%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.8575102053935906%;">(ii)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain Definitions</font></div></div>
  <div style="margin-left:13.333%;text-indent:15.385%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.8465159749385585%;">(A)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Competing Business</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; shall mean any business that develops, sells or markets:</font></div></div>
  <div style="margin-left:6.667%;text-indent:28.572%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:26.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.1425112232543686%;">(1)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Upstream process intensification tools, downstream chromatography systems, downstream filtration systems, and/or consumables (including affinity ligands, analytics with a focus on in-line analytics and fluid management consumables); and/or</font></div></div>
  <div style="margin-left:6.667%;text-indent:28.572%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:26.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.1425112232543686%;">(2)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Any other products or technologies, including bioprocess products or technologies, developed or acquired, or those that are in the formative stage of being developed or acquired, by Company during the time period it employed the Executive.</font></div></div>
  <div style="margin-left:13.333%;text-indent:15.385%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.8465159749385585%;">(B)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Noncompete Cause</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; shall mean a reasonable and good faith basis for the Company to be dissatisfied with the Executive&#x2019;s job performance, the Executive&#x2019;s conduct or the Executive&#x2019;s behavior. </font></div></div>
  <div style="margin-left:13.333%;text-indent:15.385%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.8465159749385585%;">(C)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Noncompetition Consideration</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; shall mean of payments to the </font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:13.333%;text-indent:0;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Executive for the post-employment portion of the Noncompete Restricted Period (but for not more than twelve (12) months following the end of the Executive&#x2019;s employment) at the rate of 50% of the highest annualized base salary paid to the Executive by the Company within the two-year period preceding the last day of the Executive&#x2019;s employment.</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></div></div>
  <div style="margin-left:6.667%;text-indent:14.286%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.8575102053935906%;">(iii)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the Executive&#x2019;s employment with the Company and for 24 months thereafter, regardless of the reason for the termination, the Executive: (i) will refrain from directly or indirectly employing, attempting to employ, recruiting or otherwise soliciting, inducing or influencing any person to leave employment or engagement with the Company (other than terminations of employment of subordinate employees undertaken in the course of the Executive&#x2019;s employment with the Company); and (ii) will refrain from soliciting or encouraging any customer or supplier to terminate or otherwise modify adversely its business relationship with the Company.  </font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(f)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Third-Party Agreements and Rights</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive hereby confirms that the Executive is not bound by the terms of any agreement with any previous employer or other party which restricts in any way the Executive&#x2019;s use or disclosure of information or the Executive&#x2019;s engagement in any business.  The Executive represents to the Company that the Executive&#x2019;s execution of this Agreement, the Executive&#x2019;s employment with the Company and the performance of the Executive&#x2019;s proposed duties for the Company will not violate any obligations the Executive may have to any such previous employer or other party.  In the Executive&#x2019;s work for the Company, the Executive will not disclose or make use of any information in violation of any agreements with or rights of any such previous employer or other party, and the Executive will not bring to the premises of the Company any copies or other tangible embodiments of non-public information belonging to or obtained from any such previous employment or other party.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(g)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Litigation and Regulatory Cooperation</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  During and after the Executive&#x2019;s employment, the Executive shall cooperate fully with the Company in the defense or prosecution of any claims or actions now in existence or which may be brought in the future against or on behalf of the Company which relate to events or occurrences that transpired while the Executive was employed by the Company.  The Executive&#x2019;s full cooperation in connection with such claims or actions shall include, but not be limited to, being available to meet with counsel to prepare for discovery or trial and to act as a witness on behalf of the Company at mutually convenient times.  During and after the Executive&#x2019;s employment, the Executive also shall cooperate fully with the Company in connection with any investigation or review of any federal, state or local regulatory authority as any such investigation or review relates to events or occurrences that transpired while the Executive was employed by the Company.  The Company shall reimburse the Executive for any reasonable out-of-pocket expenses incurred in connection with the Executive&#x2019;s performance of obligations pursuant to this subsection.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(h)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Injunction</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive agrees that it would be difficult to measure any damages caused to the Company which might result from any breach by the Executive of the promises set forth in this Section 7, and that in any event money damages would be an inadequate remedy for any such breach.  Accordingly, subject to Section 6 (&#x201c;Arbitration&#x201d;) of this Agreement, the Executive agrees that if the Executive breaches, or proposes to breach, any portion of this Agreement, the Company shall be entitled, in addition to all other remedies that it may have, to an injunction or other appropriate equitable relief to restrain any such breach without showing or proving any actual damage to the Company.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(i)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Protected Disclosures</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive understands that nothing contained in this Agreement limits the Executive&#x2019;s ability to communicate with any federal, state or local governmental agency or commission, including to provide documents or other information, without notice to the Company.  The Executive also understands that nothing in this Agreement limits the Executive&#x2019;s ability to share compensation information concerning the Executive or others, except that this does not permit the Executive to disclose compensation information concerning others that the Executive obtains because the Executive&#x2019;s job responsibilities require or allow access to such information.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(j)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Defend Trade Secrets Act of 2016</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Executive understands that pursuant to the federal Defend Trade Secrets Act of 2016, the Executive shall not be held criminally or civilly liable under any federal or state trade secret law for the disclosure of a trade secret that (a) is made (i) in confidence to a federal, state, or local </font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:0;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">government official, either directly or indirectly, or to an attorney; and (ii) solely for the purpose of reporting or investigating a suspected violation of law; or (b) is made in a complaint or other document filed in a lawsuit or other proceeding, if such filing is made under seal.</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">6.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Arbitration of Disputes</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  Any controversy or claim arising out of or relating to this Agreement or the breach thereof or otherwise arising out of the Executive&#x2019;s employment or the termination of that employment (including, without limitation, any claims of unlawful employment discrimination whether based on age or otherwise) shall, to the fullest extent permitted by law, be settled by arbitration in any forum and form agreed upon by the parties or, in the absence of such an agreement, under the auspices of the American Arbitration Association (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">AAA</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) in Boston, Massachusetts in accordance with the Employment Dispute Resolution Rules of the AAA, including, but not limited to, the rules and procedures applicable to the selection of arbitrators.  In the event that any person or entity other than the Executive or the Company may be a party with regard to any such controversy or claim, such controversy or claim shall be submitted to arbitration subject to such other person or entity&#x2019;s agreement.  All AAA-imposed costs of said arbitration, including the arbitrator&#x2019;s fees, if any, shall be borne by the Company.  All legal fees incurred by the parties in connection with such arbitration shall be borne by the party who incurs them, unless applicable statutory authority provides for the award of attorneys&#x2019; fees to the prevailing party and the arbitrator&#x2019;s decision and award provides for the award of such fees.  Judgment upon the award rendered by the arbitrator may be entered in any court having jurisdiction thereof.  This Section shall be specifically enforceable.  Notwithstanding the foregoing, this Section shall not preclude either party from pursuing a court action for the sole purpose of obtaining a temporary restraining order or a preliminary injunction in circumstances in which such relief is appropriate; provided that any other relief shall be pursued through an arbitration proceeding pursuant to this Section.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">7.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Consent to Jurisdiction</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  To the extent that any court action is permitted consistent with or to enforce Section 6 (&#x201c;Arbitration&#x201d;) of this Agreement, the parties hereby waive any right to a jury with respect to such action and consent to the jurisdiction of the Superior Court of the Commonwealth of Massachusetts and the United States District Court for the District of Massachusetts.  Accordingly, with respect to any such court action, the Executive (a) submits to the personal jurisdiction of such courts; (b) consents to service of process; and (c) waives any other requirement (whether imposed by statute, rule of court, or otherwise) with respect to personal jurisdiction or service of process.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">8.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Integration</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  This Agreement constitutes the entire agreement between the parties with respect to the subject matter hereof and supersedes all prior agreements between the parties concerning such subject matter.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">9.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Section 409A</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Anything in this Agreement to the contrary notwithstanding, if at the time of the Executive&#x2019;s separation from service within the meaning of Section 409A of the Internal Revenue Code of 1986, as amended (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Code</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), the Company determines that the Executive is a &#x201c;specified employee&#x201d; within the meaning of Section 409A(a)(2)(B)(i) of the Code, then to the extent any payment or benefit that the Executive becomes entitled to under this Agreement on account of the Executive&#x2019;s separation from service would be considered deferred compensation otherwise subject to the 20 percent additional tax imposed pursuant to Section 409A(a) of the Code as a result of the application of Section 409A(a)(2)(B)(i) of the Code, such payment shall not be payable and such benefit shall not be provided until the date that is the earlier of (A) six months and one day after the Executive&#x2019;s separation from service, or (B) the Executive&#x2019;s death.  If any such delayed cash payment is otherwise payable on an installment basis, the first payment shall include a catch-up payment covering amounts that would otherwise have been paid during the six-month period but for the application of this provision, and the balance of the installments shall be payable in accordance with their original schedule.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">All in-kind benefits provided and expenses eligible for reimbursement under this Agreement shall be provided by the Company or incurred by the Executive during the time periods set forth in this Agreement.  All reimbursements shall be paid as soon as administratively practicable, but in no event shall any reimbursement be paid after the last day of the taxable year following the taxable year in which the expense was incurred.  The amount of in-kind benefits provided or reimbursable expenses incurred in one taxable year shall not affect the in-kind benefits to be provided or the expenses eligible for reimbursement in any other taxable year </font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:0;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(except for any lifetime or other aggregate limitation applicable to medical expenses).  Such right to reimbursement or in-kind benefits is not subject to liquidation or exchange for another benefit.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">To the extent that any payment or benefit described in this Agreement constitutes &#x201c;non-qualified deferred compensation&#x201d; under Section 409A of the Code, and to the extent that such payment or benefit is payable upon the Executive&#x2019;s termination of employment, then such payments or benefits shall be payable only upon the Executive&#x2019;s &#x201c;separation from service.&#x201d; The determination of whether and when a separation from service has occurred shall be made in accordance with the presumptions set forth in Treasury Regulation Section 1.409A-1(h).</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The parties intend that this Agreement will be administered in accordance with Section 409A of the Code.  To the extent that any provision of this Agreement is ambiguous as to its compliance with Section 409A of the Code, the provision shall be read in such a manner so that all payments hereunder comply with Section 409A of the Code.  Each payment pursuant to this Agreement is intended to constitute a separate payment for purposes of Treasury Regulation Section 1.409A-2(b)(2).  The parties agree that this Agreement may be amended, as reasonably requested by either party, and as may be necessary to fully comply with Section 409A of the Code and all related rules and regulations in order to preserve the payments and benefits provided hereunder without additional cost to either party.</font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(e)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company makes no representation or warranty and shall have no liability to the Executive or any other person if any provisions of this Agreement are determined to constitute deferred compensation subject to Section 409A of the Code but do not satisfy an exemption from, or the conditions of, such Section.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">10.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Withholding</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  All payments made by the Company to the Executive under this Agreement shall be net of any tax or other amounts required to be withheld by the Company under applicable law.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">11.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indemnification and D &amp; O Insurance</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  </font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Executive shall be entitled to benefit from the Company&#x2019;s officer indemnification agreements and insurance coverage to the same extent as other senior executive officers of the Company (including the right to such coverage or benefit following the Executive&#x2019;s employment to the extent liability continues to exist).  The Company fully respects the Executive&#x2019;s lawful obligations to the Executive&#x2019;s prior employers.  </font></div></div>
  <div style="text-indent:13.333%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:4.8%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on the Executive&#x2019;s disclosures to the Company, the Company is confident that the Executive may perform the Executive&#x2019;s duties to the Company under the terms of this Agreement without violating any obligation, to any prior employer, that the Executive has disclosed to the Company.  However, the Company is aware of the fact that former employers at times do pursue specious claims and file lawsuits for improper or misguided purposes. Therefore, in the event that any lawsuit is brought against the Executive at any time by a former employer of the Executive&#x2019;s based on the Executive&#x2019;s alleged breach of any noncompetition obligation to such former employer that the Executive has disclosed to the Company (such lawsuit, a &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Specified Proceeding</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), the Company agrees to defend the Executive in such Specified Proceeding (with counsel selected by the Company) and to pay the Executive&#x2019;s reasonable Expenses incurred in such Specified Proceeding (such obligation, the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Obligation</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;). The term &#34;</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Expenses</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#34; shall mean reasonable attorneys' fees and retainers, court costs, transcript costs, reasonable fees of experts, reasonable travel expenses, and other reasonable disbursements or expenses of the types customarily incurred in connection with judicial proceedings, including the amount of judgments, fines or penalties against the Executive or amounts paid in settlement in connection with such matters; provided, however, that the Company only will pay the amount of a settlement of the Specified Proceeding if the settlement terms are acceptable to the Company, and (notwithstanding anything herein to the contrary) upon the Company&#x2019;s payment of such settlement amount, the Obligation shall terminate.  Notwithstanding the foregoing, the Obligation will not apply to, and the Company may seek reimbursement for, any Expenses paid by the Company with respect to, any Specified Proceeding in which (i) the Executive asserts claims of any kind against the Company or any of its officers, employees or agents; or (ii) a court determines that the Executive has breached the Executive&#x2019;s confidentiality, return of property or nonsolicitation obligations to any former employer or committed fraud, willful misconduct, or </font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:0;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:13.333%;text-align:left;"><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">gross negligence.  To the extent this subsection 11(b) conflicts with, or is different in scope than, subsection 11(a) with respect to any Specified Proceeding, this subsection 11(b) shall prevail.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">12.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Successor to the Executive</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  This Agreement shall inure to the benefit of and be enforceable by the Executive&#x2019;s personal representatives, executors, administrators, heirs, distributees, devisees and legatees.  In the event of the Executive&#x2019;s death after his termination of employment but prior to the completion by the Company of all payments due him under this Agreement, the Company shall continue such payments to the Executive&#x2019;s beneficiary designated in writing to the Company prior to his death (or to his estate, if the Executive fails to make such designation).</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">13.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Enforceability</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  If any portion or provision of this Agreement (including, without limitation, any portion or provision of any section of this Agreement) shall to any extent be declared illegal or unenforceable by a court of competent jurisdiction, then the remainder of this Agreement, or the application of such portion or provision in circumstances other than those as to which it is so declared illegal or unenforceable, shall not be affected thereby, and each portion and provision of this Agreement shall be valid and enforceable to the fullest extent permitted by law.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">14.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Survival</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The provisions of this Agreement shall survive the termination of this Agreement and/or the termination of the Executive&#x2019;s employment to the extent necessary to effectuate the terms contained herein.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">15.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Waiver</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Company and the Executive acknowledge and agree that the Company may unilaterally waive the Executive&#x2019;s post-employment noncompetition obligations under Section 5(e)(i), and in the event of such a waiver, the Company is not required to pay the Executive any post-employment Noncompetition Consideration under this Agreement.  No waiver of any provision hereof shall be effective unless made in writing and signed by the waiving party.  The failure of any party to require the performance of any term or obligation of this Agreement, or the waiver by any party of any breach of this Agreement, shall not prevent any subsequent enforcement of such term or obligation or be deemed a waiver of any subsequent breach.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">16.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Notices</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  Any notices, requests, demands and other communications provided for by this Agreement shall be sufficient if in writing and delivered in person or sent by a nationally recognized overnight courier service or by registered or certified mail, postage prepaid, return receipt requested, to the Executive at the last address the Executive has filed in writing with the Company or, in the case of the Company, at its main offices, attention of the Board.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">17.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amendment</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  This Agreement may be amended or modified only by a written instrument signed by the Executive and by the Company&#x2019;s CEO or Chairperson of the Board.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">18.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Governing Law</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  This is a Massachusetts contract and shall be construed under and be governed in all respects by the laws of the Commonwealth of Massachusetts, without giving effect to the conflict of laws principles of such Commonwealth.  With respect to any disputes concerning federal law, such disputes shall be determined in accordance with the law as it would be interpreted and applied by the United States Court of Appeals for the First Circuit.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">19.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Counterparts</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  This Agreement may be executed in any number of counterparts, each of which when so executed and delivered shall be taken to be an original; but such counterparts shall together constitute one and the same document.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">20.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assignment</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  Neither the Company nor the Executive may make any assignment of this Agreement or any interest herein, by operation of law or otherwise, without the prior written consent of the other party.  Notwithstanding the foregoing, the Company may assign its rights under this Agreement without any such further consent of the Executive to any successor in interest to the Company including in the event that the Company shall effect a reorganization, consolidate with or merge into any other corporation, limited liability company, partnership, organization or other entity, or transfer all or substantially all of its properties or assets to any other corporation, limited liability company, partnership, organization or other entity.</font></div></div>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">21.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Successor to Company</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  The Company shall require any successor (whether direct or indirect, by purchase, merger, consolidation or otherwise) to all or substantially all of the business or assets of the Company expressly to assume and agree to perform this Agreement to the same extent that the Company would be required to perform it if no succession had taken place.  Failure of the Company to obtain an assumption of this Agreement at or prior to the effectiveness of any succession shall be a material breach of this Agreement.</font></div></div>
  <div style="text-indent:6.667%;font-size:0;margin-top:0;justify-content:flex-start;margin-bottom:12pt;min-width:6.667%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:2.4%;">22.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gender Neutral</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.  Wherever used herein, a pronoun in the masculine gender shall be considered as including the feminine gender unless the context clearly indicates otherwise.</font></div></div>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:12pt;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">[</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Remainder of Page Intentionally Left Blank</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">]</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">IN WITNESS WHEREOF, the parties have executed this Agreement on the date and year first above written.</font></p>
  <p style="margin-left:40%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:24pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">REPLIGEN CORPORATION</font></p>
  <p style="margin-left:40%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/s/ Anthony Hunt</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">____________________________________<br>By:  Anthony Hunt<br>Its:  Chief Executive Officer</font></p>
  <p style="margin-left:40%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:24pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">EXECUTIVE</font></p>
  <p style="margin-left:40%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/s/ Olivier Loeillot	</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"><br>Olivier Loeillot</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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:normal;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit A: Current Severance Plan</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">(filed as Exhibit 10.13 to the Company Annual Report on Form 10-K for the year-ended December 31, 2022)</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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-weight:normal;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:10.2%;font-size:10pt;margin-top:6pt;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ACTIVE/123594487</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>rgen-ex31_1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html>
 <head>
  <title>EX-31.1</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">Exhibit 31.1</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">CERTIFICATION OF PRINCIPAL EXECUTIVE OFFICER PURSUANT TO RULE 13a-14(a) / RULE 15d-14(a) OF THE SECURITIES EXCHANGE ACT OF 1934, AS AMENDED</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I, Tony J. Hunt, certify that:</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <div style="text-indent:0;display:flex;margin-top:12pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I have reviewed this Quarterly Report on Form 10-Q of Repligen Corporation; </font></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report; </font></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report; </font></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles; </font></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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 persons performing the equivalent functions): </font></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:12pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <p style="text-indent:0;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:40.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:100%;"></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: October 31, 2023</font></p></td>
   </tr>
   <tr style="height:12.25pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid;text-align:left;"><p style="text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/s/ T</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ONY</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;J. H</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">UNT</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Tony J. Hunt</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Chief Executive Officer</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">(Principal executive officer)</font></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;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;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<FILENAME>rgen-ex31_2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html>
 <head>
  <title>EX-31.2</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">Exhibit 31.2</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">CERTIFICATION OF PRINCIPAL FINANCIAL OFFICER PURSUANT TO RULE 13a-14(a) / RULE 15d-14(a) OF THE SECURITIES EXCHANGE ACT OF 1934, AS AMENDED</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I, Jason K. Garland, certify that:</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <div style="text-indent:0;display:flex;margin-top:12pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I have reviewed this Quarterly Report on Form 10-Q of Repligen Corporation; </font></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report; </font></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report; </font></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles; </font></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5%;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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 persons performing the equivalent functions): </font></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5%;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:5.454525619906837%;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">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></div></div>
  <p style="text-indent:0;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:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:40.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:100%;"></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: October 31, 2023</font></p></td>
   </tr>
   <tr style="height:12.25pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/s/ JASON K. GARLAND</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Jason K. Garland</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Chief Financial Officer</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">(Principal financial officer)</font></p></td>
   </tr>
  </table>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;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;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>5
<FILENAME>rgen-ex32_1.htm
<DESCRIPTION>EX-32.1
<TEXT>
<html>
 <head>
  <title>EX-32.1</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;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;min-width:fit-content;">Exhibit 32.1*</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">CERTIFICATION PURSUANT TO</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">18 U.S.C. SECTION 1350,</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">AS ADOPTED PURSUANT TO</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the Quarterly Report of Repligen Corporation (the &#x201c;Company&#x201d;) on Form 10-Q for the period ending September 30, 2023 as filed with the Securities and Exchange Commission on the date hereof (the &#x201c;Report&#x201d;), the undersigned officers of the Company hereby certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, to my knowledge, that:</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <div style="margin-left:3.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.447919145106397%;">(1)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and </font></div></div>
  <div style="margin-left:3.333%;text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.447919145106397%;">(2)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company. </font></div></div>
  <p style="text-indent:0;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:42.42%;"></td>
    <td style="width:9.1%;"></td>
    <td style="width:6.06%;"></td>
    <td style="width:42.42%;"></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: October 31, 2023</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">By:</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.75pt solid;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">S</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/ T</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">ONY</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;J. H</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">UNT</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Tony J. Hunt</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Chief Executive Officer</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">(Principal executive officer)</font></p></td>
   </tr>
   <tr style="height:12.25pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: October 31, 2023</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">By:</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">S</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/ JASON K. GARLAND</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Jason K. Garland</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">Chief Financial Officer</font></p></td>
   </tr>
   <tr style="height:10pt;">
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p></td>
    <td style="word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">(Principal financial officer)</font></p></td>
   </tr>
  </table>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">* This certification shall not be deemed &#x201c;filed&#x201d; for purposes of Section 18 of the Securities Exchange Act of 1934, or otherwise subject to the liability of that section, nor shall it be deemed to be incorporated by reference into any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934.</font><font style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="text-indent:0;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;min-width:fit-content;">&#160;</font></p>
  <p style="text-indent:0;font-size:10pt;margin-top:12pt;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;min-width:fit-content;">&#160;</font></p>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>rgen-20230930_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Linkbase Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2023-10-31T10:45:29.1060+00:00 -->
<!-- Copyright (c) 2023 Donnelly Financial Solutions, Inc. All Rights Reserved. -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedBalanceSheets" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfCashFlows" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails" xlink:href="rgen-20230930.xsd#DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:href="rgen-20230930.xsd#DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:type="simple"/>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesNoncurrent" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_PreferredStockValue" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_CommitmentsAndContingencies" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsNoncurrent" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_Goodwill" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_ConvertibleNotesPayableCurrent" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent" order="5" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleNotesPayableCurrent" xlink:label="us-gaap_ConvertibleNotesPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CostsAndExpenses" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InvestmentIncomeNet" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_NetIncomeLoss" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_NonoperatingIncomeExpense" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_CostsAndExpenses" order="1" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CostsAndExpenses" xlink:to="us-gaap_ResearchAndDevelopmentExpense" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InterestExpense" order="1" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="1" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CostsAndExpenses" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="rgen_AmortizationOfDebtIssuanceCost" order="2" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CostsAndExpenses" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" order="6" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses" xlink:label="us-gaap_CostsAndExpenses"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNet" xlink:label="us-gaap_InvestmentIncomeNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AmortizationOfDebtIssuanceCost" xlink:label="rgen_AmortizationOfDebtIssuanceCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetIncomeLoss" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" order="0" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" order="1" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_AmortizationOfFinancingCosts" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireSoftware" order="2" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfConvertibleDebt" order="2" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationAndAmortization" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="3" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" order="3" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" order="4" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" order="6" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="rgen_NoncashInterestIncome" order="7" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" order="9" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" order="10" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="11" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_OtherNoncashIncomeExpense" order="13" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="14" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="16" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="17" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" order="18" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" order="19" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="20" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" order="21" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" order="22" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" order="23" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="us-gaap_AmortizationOfFinancingCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="us-gaap_PaymentsToAcquireSoftware"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="us-gaap_RepaymentsOfConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashInterestIncome" xlink:label="rgen_NoncashInterestIncome"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" order="5" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" order="6" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" order="2" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_Land" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="1" weight="-1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_BuildingsAndImprovementsGross" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_LeaseholdImprovementsGross" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_MachineryAndEquipmentGross" order="3" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_FurnitureAndFixturesGross" order="4" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_CapitalizedComputerSoftwareGross" order="5" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_ConstructionInProgressGross" order="6" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentOther" order="7" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Land" xlink:label="us-gaap_Land"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="us-gaap_PropertyPlantAndEquipmentOther"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedIncomeTaxesCurrent" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_DeferredRevenueCurrent" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" order="3" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="us-gaap_DeferredRevenueCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InterestExpenseDebt" xlink:to="us-gaap_InterestExpenseDebtExcludingAmortization" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InterestExpenseDebt" xlink:to="us-gaap_AmortizationOfFinancingCosts" order="1" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpenseDebt" xlink:label="us-gaap_InterestExpenseDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpenseDebtExcludingAmortization" xlink:label="us-gaap_InterestExpenseDebtExcludingAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="us-gaap_AmortizationOfFinancingCosts"/>
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberOfSharesRestrictedStock" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="rgen_NumberOfSharesBasicOutstanding" order="0" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" order="1" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" order="2" weight="1" use="optional"/>
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" order="4" weight="1" use="optional"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="us-gaap_WeightedAverageNumberOfSharesRestrictedStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NumberOfSharesBasicOutstanding" xlink:label="rgen_NumberOfSharesBasicOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>7
<FILENAME>rgen-20230930_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Linkbase Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2023-10-31T10:45:28.6394+00:00 -->
<!-- Copyright (c) 2023 Donnelly Financial Solutions, Inc. All Rights Reserved. -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/CoverPage" xlink:href="rgen-20230930.xsd#CoverPage" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedBalanceSheets" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity" xlink:href="rgen-20230930.xsd#ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfCashFlows" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies" xlink:href="rgen-20230930.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements" xlink:href="rgen-20230930.xsd#FairValueMeasurements" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysInc" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlan" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognition" xlink:href="rgen-20230930.xsd#RevenueRecognition" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets" xlink:href="rgen-20230930.xsd#GoodwillAndIntangibleAssets" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail" xlink:href="rgen-20230930.xsd#ConsolidatedBalanceSheetDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes" xlink:href="rgen-20230930.xsd#ConvertibleSeniorNotes" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquity" xlink:href="rgen-20230930.xsd#StockholdersEquity" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingencies" xlink:href="rgen-20230930.xsd#CommitmentsAndContingencies" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxes" xlink:href="rgen-20230930.xsd#IncomeTaxes" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShare" xlink:href="rgen-20230930.xsd#EarningsPerShare" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactions" xlink:href="rgen-20230930.xsd#RelatedPartyTransactions" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReporting" xlink:href="rgen-20230930.xsd#SegmentReporting" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSubsequentEvent" xlink:href="rgen-20230930.xsd#DisclosureSubsequentEvent" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="rgen-20230930.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysIncTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables" xlink:href="rgen-20230930.xsd#RevenueRecognitionTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables" xlink:href="rgen-20230930.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables" xlink:href="rgen-20230930.xsd#ConsolidatedBalanceSheetDetailTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables" xlink:href="rgen-20230930.xsd#ConvertibleSeniorNotesTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables" xlink:href="rgen-20230930.xsd#StockholdersEquityTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShareTables" xlink:href="rgen-20230930.xsd#EarningsPerShareTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingTables" xlink:href="rgen-20230930.xsd#SegmentReportingTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#FairValueMeasurementAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail" xlink:href="rgen-20230930.xsd#DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" xlink:href="rgen-20230930.xsd#DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#GoodwillAndIntangibleAssetsAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#ConvertibleSeniorNotesAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail" xlink:href="rgen-20230930.xsd#ConvertibleSeniorNotesConvertibleDebtDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails" xlink:href="rgen-20230930.xsd#DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#StockholdersEquityAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquityStockbasedCompensationExpenseDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfOptionActivityDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#IncomeTaxesAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#DisclosureEarningsPerShareAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:href="rgen-20230930.xsd#DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#RelatedPartyTransactionsAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#SegmentReportingAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail" xlink:href="rgen-20230930.xsd#DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#SubsequentEventAdditionalInformationDetail" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/CoverPage" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AmendmentFlag" order="49.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="dei_CoverAbstract" xlink:to="dei_DocumentType" order="50.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="dei_CoverAbstract" xlink:to="dei_DocumentFiscalYearFocus" order="51.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="dei_CoverAbstract" xlink:to="dei_DocumentFiscalPeriodFocus" order="52.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="dei_CoverAbstract" xlink:to="dei_EntityCentralIndexKey" order="53.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="dei_CoverAbstract" xlink:to="dei_CurrentFiscalYearEndDate" order="54.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="dei_CoverAbstract" xlink:to="dei_DocumentPeriodEndDate" order="55.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="dei_CoverAbstract" xlink:to="dei_EntityCurrentReportingStatus" order="56.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="dei_CoverAbstract" xlink:to="dei_EntityInteractiveDataCurrent" order="57.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="dei_CoverAbstract" xlink:to="dei_EntityFileNumber" order="58.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="dei_CoverAbstract" xlink:to="dei_EntityRegistrantName" order="59.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="dei_CoverAbstract" xlink:to="dei_EntityFilerCategory" order="60.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="dei_CoverAbstract" xlink:to="dei_TradingSymbol" order="61.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="dei_CoverAbstract" xlink:to="dei_Security12bTitle" order="62.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="dei_CoverAbstract" xlink:to="dei_SecurityExchangeName" order="63.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="dei_CoverAbstract" xlink:to="dei_EntityIncorporationStateCountryCode" order="64.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="dei_CoverAbstract" xlink:to="dei_EntityTaxIdentificationNumber" order="65.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="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine1" order="66.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="dei_CoverAbstract" xlink:to="dei_EntityAddressCityOrTown" order="67.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="dei_CoverAbstract" xlink:to="dei_EntityAddressStateOrProvince" order="68.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="dei_CoverAbstract" xlink:to="dei_EntityAddressPostalZipCode" order="69.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="dei_CoverAbstract" xlink:to="dei_CityAreaCode" order="70.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="dei_CoverAbstract" xlink:to="dei_EntityShellCompany" order="71.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="dei_CoverAbstract" xlink:to="dei_EntitySmallBusiness" 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_EntityEmergingGrowthCompany" 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_LocalPhoneNumber" order="74.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="dei_CoverAbstract" xlink:to="dei_DocumentQuarterlyReport" order="75.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="dei_CoverAbstract" xlink:to="dei_DocumentTransitionReport" order="76.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="dei_CoverAbstract" xlink:to="dei_EntityCommonStockSharesOutstanding" order="77.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleNotesPayableCurrent" xlink:label="us-gaap_ConvertibleNotesPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_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_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_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_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_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_StatementTable" xlink:to="dei_LegalEntityAxis" 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_StatementLineItems" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent" 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_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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" 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/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_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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" 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_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_AssetsAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" 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_Goodwill" 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_AccumulatedOtherComprehensiveIncomeLossNetOfTax" 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_BusinessCombinationContingentConsiderationLiabilityNoncurrent" 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_ConvertibleNotesPayableCurrent" 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_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_AssetsAbstract" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" 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_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" 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_OtherLiabilitiesNoncurrent" 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_LiabilitiesCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" 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_AssetsAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" 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_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesNoncurrent" 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_AssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_Liabilities" 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_AssetsAbstract" xlink:to="us-gaap_AssetsNoncurrent" order="7" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" 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_AssetsAbstract" xlink:to="us-gaap_Assets" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" 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_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_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_StatementLineItems" 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_StatementLineItems" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" 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_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesAuthorized" 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_PreferredStockSharesIssued" 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_PreferredStockSharesOutstanding" 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_CommonStockParOrStatedValuePerShare" 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_CommonStockSharesAuthorized" 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_CommonStockSharesIssued" 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_CommonStockSharesOutstanding" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract" xlink:label="us-gaap_RevenuesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_OtherNonoperatingIncomeExpenseAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNet" xlink:label="us-gaap_InvestmentIncomeNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpensesAbstract" xlink:label="us-gaap_CostsAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyMember" xlink:label="us-gaap_RoyaltyMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AmortizationOfDebtIssuanceCost" xlink:label="rgen_AmortizationOfDebtIssuanceCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses" xlink:label="us-gaap_CostsAndExpenses"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_9"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" 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_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_IncomeStatementAbstract" 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="srt_ProductsAndServicesDomain" xlink:to="us-gaap_ProductMember" 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="dei_LegalEntityAxis" 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_RevenuesAbstract" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_WeightedAverageNumberOfSharesOutstandingAbstract" 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_RevenuesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" 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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InvestmentIncomeNet" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_CostOfGoodsAndServicesSold" 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_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="srt_ProductsAndServicesDomain" xlink:to="us-gaap_RoyaltyMember" 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="srt_ProductOrServiceAxis" 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_CostsAndExpensesAbstract" 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_WeightedAverageNumberOfSharesOutstandingAbstract" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestExpense" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpense" 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="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_OperatingIncomeLoss" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="rgen_AmortizationOfDebtIssuanceCost" 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_CostsAndExpensesAbstract" 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_StatementLineItems" xlink:to="us-gaap_OtherNonoperatingIncomeExpenseAbstract" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" 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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_CostsAndExpenses" 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_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" 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_NetIncomeLoss" 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_StatementLineItems" xlink:to="us-gaap_EarningsPerShareAbstract" 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_WeightedAverageNumberOfSharesOutstandingAbstract" 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_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss_9" 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_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" 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_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TrueUpCostsDecember2020Member" xlink:label="rgen_TrueUpCostsDecember2020Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate202006Member" xlink:label="us-gaap_AccountingStandardsUpdate202006Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" xlink:label="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" xlink:label="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalOther" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_16"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding_17"/>
    <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/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_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_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_StatementTable" 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_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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_TrueUpCostsDecember2020Member" 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_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate202006Member" 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_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" 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_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_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_AdjustmentsForNewAccountingPronouncementsAxis" 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_SharesOutstanding" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideIncMember" 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="us-gaap_AccumulatedOtherComprehensiveIncomeMember" 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_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" 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_RetainedEarningsMember" 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_StatementTable" xlink:to="us-gaap_StatementLineItems" 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_StockIssuedDuringPeriodValueConversionOfUnits" 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_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" 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_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" 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_StockIssuedDuringPeriodSharesShareBasedCompensation" 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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" 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_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" order="8" 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_StockIssuedDuringPeriodValueAcquisitions" 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_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" 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_StatementLineItems" xlink:to="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" 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_StatementLineItems" xlink:to="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" 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_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="13" 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_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" 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_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther" 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_StatementLineItems" xlink:to="us-gaap_StockholdersEquity_16" order="16" 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_SharesOutstanding_17" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="us-gaap_AmortizationOfFinancingCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssued1" xlink:label="us-gaap_StockIssued1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="us-gaap_RepaymentsOfConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="us-gaap_PaymentsToAcquireSoftware"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" xlink:label="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashInterestIncome" xlink:label="rgen_NoncashInterestIncome"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationAndAmortization" 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_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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" 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_ProceedsFromStockOptionsExercised" 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="dei_LegalEntityAxis" 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_StatementLineItems" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_FlexbiosysIncMember" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_PaymentsToAcquireBusinessesNetOfCashAcquired" 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_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AmortizationOfFinancingCosts" 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_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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" 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_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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_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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideIncMember" 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_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" 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_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_StockIssued1" 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_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_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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" 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_RepaymentsOfConvertibleDebt" 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_StatementTable" xlink:to="us-gaap_StatementLineItems" 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_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_PaymentsToAcquireSoftware" 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_SupplementalCashFlowElementsAbstract" xlink:to="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" 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="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" 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_StatementLineItems" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" 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_IncreaseDecreaseInOtherOperatingAssets" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock" 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_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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="rgen_NoncashInterestIncome" 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="us-gaap_NetCashProvidedByUsedInFinancingActivities" 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_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" 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="us-gaap_IncreaseDecreaseInAccruedLiabilities" order="6" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_OtherNoncashIncomeExpense" 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_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" 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_SupplementalCashFlowElementsAbstract" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" 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="dei_LegalEntityAxis" 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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" 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="rgen_FlexbiosysIncMember" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_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_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideIncMember" 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="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_DisclosureTextBlockAbstract" 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.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_RestructuringAndRelatedActivitiesAbstract" 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.repligencorp.com/20230930/taxonomy/role/RevenueRecognition" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="us-gaap_LongTermDebtTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_LongTermDebtTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquity" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_EquityAbstract" 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.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingencies" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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.repligencorp.com/20230930/taxonomy/role/IncomeTaxes" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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.repligencorp.com/20230930/taxonomy/role/EarningsPerShare" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_EarningsPerShareBasicAbstract" 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.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactions" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReporting" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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.repligencorp.com/20230930/taxonomy/role/DisclosureSubsequentEvent" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" 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_NewAccountingPronouncementsPolicyPolicyTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" xlink:label="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" 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_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <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_BusinessAcquisitionLineItems" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_FlexbiosysIncMember" 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_BusinessCombinationAndAssetAcquisitionAbstract" 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_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_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_BusinessAcquisitionLineItems" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:to="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" 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_RestructuringAndRelatedActivitiesAbstract" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_AccountingPoliciesAbstract" 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_AccountingPoliciesAbstract" 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.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:label="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock" 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="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:to="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" 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="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_DisclosureTextBlockAbstract" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" 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_DisclosureTextBlockAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" 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_DisclosureTextBlockAbstract" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="us-gaap_ConvertibleDebtTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfConvertiableNoteInterestExpense" xlink:label="rgen_ScheduleOfConvertiableNoteInterestExpense"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_ConvertibleDebtTableTextBlock" 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="rgen_ScheduleOfConvertiableNoteInterestExpense" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" 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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" 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_EquityAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShareTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingTables" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract" xlink:label="us-gaap_TextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TextBlockAbstract" xlink:to="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsMember" xlink:label="us-gaap_CashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashAndMoneyMarketFundsMember" xlink:label="rgen_CashAndMoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember" xlink:label="us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesAmortizedCostBasis" xlink:label="rgen_AvailableForSaleSecuritiesAmortizedCostBasis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" xlink:label="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAmortisedCost" xlink:label="rgen_DebtSecuritiesHeldToMaturityAmortisedCost"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" xlink:label="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" xlink:label="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" xlink:label="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesEstimatedFairValue" xlink:label="rgen_AvailableForSaleSecuritiesEstimatedFairValue"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_InvestmentTypeAxis" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" 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_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" 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_InvestmentTypeCategorizationMember" xlink:to="us-gaap_CashAndCashEquivalentsMember" 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_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" 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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="rgen_CashAndMoneyMarketFundsMember" 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_FairValueByBalanceSheetGroupingTable" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_CashAndCashEquivalentsAxis" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" 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_InvestmentTypeCategorizationMember" xlink:to="us-gaap_USTreasuryBillSecuritiesMember" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_CashAndCashEquivalentsLineItems" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_AvailableForSaleSecuritiesAmortizedCostBasis" 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_InvestmentTypeCategorizationMember" xlink:to="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityAmortisedCost" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_AvailableForSaleSecuritiesEstimatedFairValue" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost" xlink:label="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost" 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="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="us-gaap_MoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShortTermContingentConsideration" xlink:label="rgen_ShortTermContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_LongTermContingentConsideration" xlink:label="rgen_LongTermContingentConsideration"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" 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_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_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" 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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_MoneyMarketFundsMember" 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_FairValueByBalanceSheetGroupingTable" 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_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_CashAndCashEquivalentsAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_ShortTermContingentConsideration" 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_FairValueInputsLevel3Member" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_LongTermContingentConsideration" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod" 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="rgen_AvitideIncMember" 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="rgen_SummaryOfSignificantAccountingPoliciesTable" 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_FairValueDisclosuresAbstract" xlink:to="rgen_SummaryOfSignificantAccountingPoliciesTable" 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="rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" 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="rgen_FlexbiosysIncMember" 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="rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:to="rgen_SummaryOfSignificantAccountingPoliciesLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ContingentConsiderationMember" xlink:label="rgen_ContingentConsiderationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_4"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="rgen_ContingentConsiderationMember" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_LiabilitiesFairValueDisclosure" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_LiabilitiesFairValueDisclosure_4" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ContingentConsiderationMember" xlink:label="rgen_ContingentConsiderationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="us-gaap_MeasurementInputTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputProbabilityOfSuccessMember" xlink:label="rgen_MeasurementInputProbabilityOfSuccessMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueDomain" xlink:label="us-gaap_ValuationTechniqueDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MonteCarloSimulationMember" xlink:label="rgen_MonteCarloSimulationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="us-gaap_MeasurementInputTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideAndFlexbiosysMember" xlink:label="rgen_AvitideAndFlexbiosysMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RDAndCommercializationBasedPaymentsMember" xlink:label="rgen_RDAndCommercializationBasedPaymentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueAxis" xlink:label="us-gaap_ValuationTechniqueAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputEarnoutDiscountRateMember" xlink:label="rgen_MeasurementInputEarnoutDiscountRateMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ProbabilityWeightedPresentValueMember" xlink:label="rgen_ProbabilityWeightedPresentValueMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ProbabilityOfSuccess" xlink:label="rgen_ProbabilityOfSuccess"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RevenueAndVolumeBasedPaymentsMember" xlink:label="rgen_RevenueAndVolumeBasedPaymentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputPriceVolatilityMember" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageDiscountRate" xlink:label="rgen_WeightedAverageDiscountRate"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ManufacturingLineExpansionsMember" xlink:label="rgen_ManufacturingLineExpansionsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputRevenueVolumeDiscountRateMember" xlink:label="rgen_MeasurementInputRevenueVolumeDiscountRateMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_VolatilityRateOfContingentConsideration" xlink:label="rgen_VolatilityRateOfContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RevenueAndVolumeDiscountRate" xlink:label="rgen_RevenueAndVolumeDiscountRate"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DerivativeContractTypeDomain" xlink:to="rgen_ContingentConsiderationMember" 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_FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain" 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_MeasurementInputTypeDomain" xlink:to="rgen_MeasurementInputProbabilityOfSuccessMember" 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_ValuationTechniqueDomain" xlink:to="rgen_MonteCarloSimulationMember" 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_LiabilitiesFairValueDisclosure" 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_MeasurementInputTypeAxis" xlink:to="us-gaap_MeasurementInputTypeDomain" 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="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="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" 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="rgen_AvitideAndFlexbiosysMember" 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_IncomeStatementLocationDomain" xlink:to="rgen_RDAndCommercializationBasedPaymentsMember" 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_ValuationTechniqueAxis" xlink:to="us-gaap_ValuationTechniqueDomain" 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_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" 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_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_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_MeasurementInputTypeDomain" xlink:to="rgen_MeasurementInputEarnoutDiscountRateMember" 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_ValuationTechniqueDomain" xlink:to="rgen_ProbabilityWeightedPresentValueMember" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_ProbabilityOfSuccess" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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_IncomeStatementLocationDomain" xlink:to="rgen_RevenueAndVolumeBasedPaymentsMember" 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_MeasurementInputTypeDomain" xlink:to="us-gaap_MeasurementInputPriceVolatilityMember" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_WeightedAverageDiscountRate" 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="srt_RangeAxis" 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_IncomeStatementLocationDomain" xlink:to="rgen_ManufacturingLineExpansionsMember" 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_MeasurementInputTypeDomain" xlink:to="rgen_MeasurementInputRevenueVolumeDiscountRateMember" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_DerivativeFixedInterestRate" 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_IncomeStatementLocationAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_VolatilityRateOfContingentConsideration" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_ValuationTechniqueAxis" order="4" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_RevenueAndVolumeDiscountRate" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_MeasurementInputTypeAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:label="rgen_BusinessCombinationConsiderationIndemnificationEscrow"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" xlink:label="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_6"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_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_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_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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" 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="rgen_FlexbiosysIncMember" 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_BusinessCombinationAndAssetAcquisitionAbstract" 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_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_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_StatementEquityComponentsAxis" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" 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_BusinessAcquisitionLineItems" 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_BusinessAcquisitionLineItems" 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="us-gaap_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationConsiderationIndemnificationEscrow" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" order="4" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" order="5" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_6" order="6" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationAcquisitionRelatedCosts" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_Goodwill" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <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_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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" 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="rgen_FlexbiosysIncMember" 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_BusinessCombinationAndAssetAcquisitionAbstract" 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_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_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_ScheduleOfBusinessAcquisitionsByAcquisitionTable" 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_DevelopedTechnologyRightsMember" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" 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_BusinessAcquisitionLineItems" 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_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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" order="5" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_Goodwill" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" order="9" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember"/>
    <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_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_BusinessAcquisitionLineItems" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_FlexbiosysIncMember" 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_BusinessCombinationAndAssetAcquisitionAbstract" 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_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_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_ScheduleOfBusinessAcquisitionsByAcquisitionTable" 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_DevelopedTechnologyRightsMember" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" 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_BusinessAcquisitionLineItems" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TradeNamesMember" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashinventorywriteOff" xlink:label="rgen_NoncashinventorywriteOff"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" xlink:to="rgen_NoncashinventorywriteOff" 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/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="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="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_SubsequentEventTypeAxis" 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_RestructuringAndRelatedActivitiesAbstract" 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="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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCharges" 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_MinimumMember" 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_ScheduleOfRestructuringAndRelatedCostsTable" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCosts" 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_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_RestructuringCostAndReserveLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeSeveranceMember" xlink:label="us-gaap_EmployeeSeveranceMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryWriteOffMember" xlink:label="rgen_InventoryWriteOffMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AcceleratedDepreciationMember" xlink:label="rgen_AcceleratedDepreciationMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FacilityAndOtherExitCostsMember" xlink:label="rgen_FacilityAndOtherExitCostsMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCosts" 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_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" 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_ScheduleOfRestructuringAndRelatedCostsTable" 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_RestructuringAndRelatedActivitiesAbstract" 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="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_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" 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_TypeOfRestructuringDomain" xlink:to="us-gaap_EmployeeSeveranceMember" 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="us-gaap_RestructuringCostAndReserveAxis" 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_IncomeStatementLocationDomain" xlink:to="us-gaap_ResearchAndDevelopmentExpenseMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_InventoryWriteOffMember" 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_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_RestructuringCostAndReserveLineItems" 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_IncomeStatementLocationDomain" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_AcceleratedDepreciationMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_FacilityAndOtherExitCostsMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeSeveranceMember" xlink:label="us-gaap_EmployeeSeveranceMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryWriteOffMember" xlink:label="rgen_InventoryWriteOffMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringReserveSettledWithoutCash2" xlink:label="us-gaap_RestructuringReserveSettledWithoutCash2"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryAdjustmentsMember" xlink:label="rgen_InventoryAdjustmentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringReserve" xlink:label="us-gaap_RestructuringReserve"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AcceleratedDepreciationMember" xlink:label="rgen_AcceleratedDepreciationMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FacilityExitAndOtherExitCostsMember" xlink:label="rgen_FacilityExitAndOtherExitCostsMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCosts" 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_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" 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_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_RestructuringCostAndReserveAxis" 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_RestructuringAndRelatedActivitiesAbstract" 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="us-gaap_TypeOfRestructuringDomain" xlink:to="us-gaap_EmployeeSeveranceMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_PaymentsForRestructuring" 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_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_RestructuringCostAndReserveLineItems" 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_TypeOfRestructuringDomain" xlink:to="rgen_InventoryWriteOffMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringReserveSettledWithoutCash2" 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_TypeOfRestructuringDomain" xlink:to="rgen_InventoryAdjustmentsMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringReserve" 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_TypeOfRestructuringDomain" xlink:to="rgen_AcceleratedDepreciationMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_FacilityExitAndOtherExitCostsMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyMember" xlink:label="us-gaap_RoyaltyMember"/>
    <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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTable" 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_ProductsAndServicesDomain" xlink:to="us-gaap_ProductMember" 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="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" 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_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" 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_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" 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="srt_ProductsAndServicesDomain" xlink:to="us-gaap_RoyaltyMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss" xlink:label="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:label="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenue" xlink:label="us-gaap_DeferredRevenue"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss" 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_ContractWithCustomerAssetAndLiabilityAbstract" 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_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerLiability" 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_ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_DeferredRevenue" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BioflexMember" xlink:label="rgen_BioflexMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_4"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_Goodwill" 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_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_BusinessCombinationsAbstract" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_BioflexMember" 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_GoodwillLineItems" xlink:to="us-gaap_GoodwillAcquiredDuringPeriod" 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_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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideIncMember" 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_GoodwillPurchaseAccountingAdjustments" 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="rgen_FlexbiosysIncMember" 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_GoodwillLineItems" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" 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_GoodwillLineItems" xlink:to="us-gaap_Goodwill_4" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewDateOfAnnualGoodwillImpairmentTest" xlink:label="us-gaap_NewDateOfAnnualGoodwillImpairmentTest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest" xlink:label="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" 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="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_NewDateOfAnnualGoodwillImpairmentTest" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IntangibleAssetsLineItems" xlink:label="rgen_IntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfIntangibleAssetsTable" xlink:label="rgen_ScheduleOfIntangibleAssetsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TrademarkMember" xlink:label="rgen_TrademarkMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IndefiniteLivedIntangibleAssetsNet" xlink:label="rgen_IndefiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksMember" xlink:label="us-gaap_TrademarksMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="us-gaap_OtherIntangibleAssetsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" 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="rgen_ScheduleOfIntangibleAssetsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" 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_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" 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_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="rgen_TrademarkMember" 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_DevelopedTechnologyRightsMember" 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="rgen_ScheduleOfIntangibleAssetsTable" 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_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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" 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="rgen_ScheduleOfIntangibleAssetsTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" 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_PatentsMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" 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="rgen_ScheduleOfIntangibleAssetsTable" xlink:to="rgen_IntangibleAssetsLineItems" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="rgen_IndefiniteLivedIntangibleAssetsNet" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_OtherIntangibleAssetsMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" 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_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_ScheduleOfFiniteLivedIntangibleAssetsTable" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" 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_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="rgen_FiniteLivedIntangibleLiabilitiesLineItems" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryCurrentTable" xlink:label="us-gaap_InventoryCurrentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryLineItems" xlink:label="us-gaap_InventoryLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryCurrentTable" 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_InventoryLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_InventoryCurrentTable" xlink:to="dei_LegalEntityAxis" 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_InventoryLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" 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_InventoryCurrentTable" xlink:to="us-gaap_InventoryLineItems" 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_InventoryLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" 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_InventoryLineItems" xlink:to="us-gaap_InventoryNet" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Land" xlink:label="us-gaap_Land"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="us-gaap_PropertyPlantAndEquipmentOther"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_Land" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="dei_LegalEntityAxis" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_BuildingsAndImprovementsGross" 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_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_LeaseholdImprovementsGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_MachineryAndEquipmentGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FurnitureAndFixturesGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_CapitalizedComputerSoftwareGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ConstructionInProgressGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentOther" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="9" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:label="rgen_ScheduleOfAccruedLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfAccruedLiabilitiesTable" xlink:label="rgen_ScheduleOfAccruedLiabilitiesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="us-gaap_DeferredRevenueCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesTable" 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="rgen_ScheduleOfAccruedLiabilitiesTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_DeferredRevenueCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesTable" xlink:to="rgen_ScheduleOfAccruedLiabilitiesLineItems" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_AccruedIncomeTaxesCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="us-gaap_ProceedsFromConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="us-gaap_DebtInstrumentInterestRateTerms"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtFairValue" xlink:label="us-gaap_LongTermDebtFairValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:label="rgen_OptionToPurchaseAdditionalDebtFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtInstrumentConvertibleIntoEquity" xlink:label="rgen_DebtInstrumentConvertibleIntoEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdTradingDays" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdTradingDays"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_LossOnDebtConversion" xlink:label="rgen_LossOnDebtConversion"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" xlink:label="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted"/>
    <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="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_DebtInstrumentNameDomain" xlink:to="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" 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_DebtInstrumentFaceAmount" 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_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_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" 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_ProceedsFromConvertibleDebt" 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_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_DebtInstrumentInterestRateTerms" 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_DebtInstrumentMaturityDate" 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_LongTermDebt" 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_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtFairValue" order="6" 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="rgen_OptionToPurchaseAdditionalDebtFaceAmount" 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_DebtInstrumentLineItems" xlink:to="rgen_DebtInstrumentConvertibleIntoEquity" 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_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdTradingDays" order="9" 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_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" order="10" 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="rgen_LossOnDebtConversion" 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_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" 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_DebtInstrumentLineItems" xlink:to="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleNotesPayableCurrent" xlink:label="us-gaap_ConvertibleNotesPayableCurrent"/>
    <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="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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentNameDomain" xlink:to="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" 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_DebtInstrumentCarryingAmount" 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_DebtInstrumentLineItems" 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_DebtInstrumentLineItems" xlink:to="us-gaap_DeferredFinanceCostsNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_ConvertibleNotesPayableCurrent" 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_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpenseDebtExcludingAmortization" xlink:label="us-gaap_InterestExpenseDebtExcludingAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="us-gaap_AmortizationOfFinancingCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentForAmortization" xlink:label="us-gaap_AdjustmentForAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpenseDebt" xlink:label="us-gaap_InterestExpenseDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_InterestExpenseDebtExcludingAmortization" 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_AmortizationOfFinancingCosts" 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_DebtDisclosureAbstract" xlink:to="us-gaap_AdjustmentForAmortization" 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_DebtDisclosureAbstract" xlink:to="us-gaap_InterestExpenseDebt" 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_DebtDisclosureAbstract" xlink:to="us-gaap_DebtInstrumentInterestRateEffectivePercentage" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ChiefFinancialOfficerMember" xlink:label="srt_ChiefFinancialOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockOptionAndIncentivePlanMember" xlink:label="rgen_StockOptionAndIncentivePlanMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateDomain" xlink:label="us-gaap_AwardDateDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TwoThousandAndTwentyFourMember" xlink:label="rgen_TwoThousandAndTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideLlcMember" xlink:label="rgen_AvitideLlcMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockholdersEquityNoteDisclosureTable" xlink:label="rgen_StockholdersEquityNoteDisclosureTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockholdersEquityNoteDisclosureLineItems" xlink:label="rgen_StockholdersEquityNoteDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateAxis" xlink:label="us-gaap_AwardDateAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonEmployeeDirectorStockOptionMember" xlink:label="rgen_NonEmployeeDirectorStockOptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_UnvestedOptionsMember" xlink:label="rgen_UnvestedOptionsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:label="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionsToPurchaseCommonStockMember" xlink:label="rgen_OptionsToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PerformanceBasedRestrictedStockUnitsMember" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_EarnoutConsiderationEarned" xlink:label="rgen_EarnoutConsiderationEarned"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ChiefFinancialOfficerMember" 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_VestingDomain" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheOneMember" 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_PlanNameDomain" xlink:to="rgen_StockOptionAndIncentivePlanMember" 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_AwardDateDomain" xlink:to="rgen_TwoThousandAndTwentyFourMember" 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/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="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_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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideLlcMember" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="rgen_StockholdersEquityNoteDisclosureTable" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="dei_LegalEntityAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" 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_AwardDateAxis" xlink:to="us-gaap_AwardDateDomain" 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_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="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="rgen_StockholdersEquityNoteDisclosureTable" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharePrice" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_AwardDateAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" 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="rgen_StockholdersEquityNoteDisclosureTable" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_VestingAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" 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="rgen_NonEmployeeDirectorStockOptionMember" order="5.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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_PlanNameAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_UnvestedOptionsMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_RestrictedStockAndPerformanceStockUnitsMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="srt_TitleOfIndividualAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="8.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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="rgen_StockholdersEquityNoteDisclosureLineItems" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" order="9.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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_OptionsToPurchaseCommonStockMember" order="10.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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_PerformanceBasedRestrictedStockUnitsMember" order="11.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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_CommonStockSharesIssued" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="rgen_EarnoutConsiderationEarned" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" 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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_ShareBasedCompensation" 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/terseLabel"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" 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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_IncomeStatementLocationAxis" 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="us-gaap_ResearchAndDevelopmentExpenseMember" 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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" 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_IncomeStatementLocationDomain" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_4"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_4"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" 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/terseLabel"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonExecutiveMember" xlink:label="rgen_NonExecutiveMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ExecutiveOfficerMember" xlink:label="srt_ExecutiveOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="rgen_NonExecutiveMember" 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="rgen_PercentageOfSharesSubjectToForfeiture" 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/terseLabel"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ExecutiveOfficerMember" 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="dei_LegalEntityAxis" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_TitleOfIndividualAxis" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_4"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_4"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_4" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonExecutiveMember" xlink:label="rgen_NonExecutiveMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ExecutiveOfficerMember" xlink:label="srt_ExecutiveOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="rgen_NonExecutiveMember" 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="rgen_PercentageOfSharesSubjectToForfeiture" 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/terseLabel"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ExecutiveOfficerMember" 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="dei_LegalEntityAxis" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_TitleOfIndividualAxis" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_RestrictedStockAndPerformanceStockUnitsMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CommitmentsAndContingenciesTable" xlink:label="rgen_CommitmentsAndContingenciesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NGLImpactAMember" xlink:label="rgen_NGLImpactAMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentArrangementMember" xlink:label="us-gaap_ResearchAndDevelopmentArrangementMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CommitmentsAndContingenciesLineItems" xlink:label="rgen_CommitmentsAndContingenciesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyExpense" xlink:label="us-gaap_RoyaltyExpense"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="rgen_CommitmentsAndContingenciesTable" 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="rgen_NGLImpactAMember" 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="rgen_CommitmentsAndContingenciesTable" xlink:to="srt_ProductOrServiceAxis" 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_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:to="us-gaap_ResearchAndDevelopmentArrangementMember" 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_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" 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_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" 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="rgen_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount" 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="rgen_CommitmentsAndContingenciesTable" xlink:to="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" 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="rgen_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_RoyaltyExpense" 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="rgen_CommitmentsAndContingenciesTable" xlink:to="rgen_CommitmentsAndContingenciesLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncomeTaxesLineItems" xlink:label="rgen_IncomeTaxesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncomeTaxesTable" xlink:label="rgen_IncomeTaxesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InflationReductionActOfTwoThousandTwentyTwoMember" xlink:label="rgen_InflationReductionActOfTwoThousandTwentyTwoMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfCurrentFederalTaxExpenseBenefit" xlink:label="rgen_PercentageOfCurrentFederalTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentOfExciseTaxOnNetStockRepurchases" xlink:label="rgen_PercentOfExciseTaxOnNetStockRepurchases"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_IncomeTaxesLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" 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="rgen_IncomeTaxesTable" xlink:to="us-gaap_IncomeTaxAuthorityAxis" 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_IncomeTaxAuthorityDomain" xlink:to="rgen_InflationReductionActOfTwoThousandTwentyTwoMember" 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_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain" 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="rgen_IncomeTaxesTable" 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="rgen_IncomeTaxesLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" 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="rgen_IncomeTaxesTable" xlink:to="rgen_IncomeTaxesLineItems" 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="rgen_IncomeTaxesLineItems" xlink:to="rgen_PercentageOfCurrentFederalTaxExpenseBenefit" 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="rgen_IncomeTaxesLineItems" xlink:to="rgen_PercentOfExciseTaxOnNetStockRepurchases" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate202006Member" xlink:label="us-gaap_AccountingStandardsUpdate202006Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DilutiveEffectOnSharesOfConversionPremium" xlink:label="rgen_DilutiveEffectOnSharesOfConversionPremium"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestOnConvertibleDebtNetOfTax" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax"/>
    <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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentNameDomain" xlink:to="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" 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_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_StatementTable" 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_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_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate202006Member" 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_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" 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_StatementClassOfStockAxis" 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_DebtInstrumentFaceAmount" 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_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_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" 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_StatementTable" xlink:to="us-gaap_DebtInstrumentAxis" 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_StatementLineItems" xlink:to="rgen_DilutiveEffectOnSharesOfConversionPremium" 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_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain" 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_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" 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_StatementLineItems" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_RestrictedStockAndPerformanceStockUnitsMember" 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_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" order="4" 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_InterestOnConvertibleDebtNetOfTax" 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_StatementTable" xlink:to="us-gaap_StatementLineItems" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:label="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="us-gaap_WeightedAverageNumberOfSharesRestrictedStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DilutiveSecuritiesAbstract" xlink:label="us-gaap_DilutiveSecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestOnConvertibleDebtNetOfTax" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NumberOfSharesBasicOutstanding" xlink:label="rgen_NumberOfSharesBasicOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:label="rgen_ReconciliationOfBasicAndDilutedSharesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesRestrictedStock" 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_DilutiveSecuritiesAbstract" xlink:to="us-gaap_InterestOnConvertibleDebtNetOfTax" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:to="dei_LegalEntityAxis" 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_EarningsPerShareBasicAbstract" xlink:to="rgen_NumberOfSharesBasicOutstanding" 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_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLoss" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:to="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" 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_DilutiveSecuritiesAbstract" xlink:to="us-gaap_NetIncomeLossAttributableToParentDiluted" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:to="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_DilutiveSecuritiesAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_EarningsPerShareBasicAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_EarningsPerShareAbstract" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfRelatedPartyTable" xlink:label="rgen_ScheduleOfRelatedPartyTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrincipalOwnerMember" xlink:label="us-gaap_PrincipalOwnerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SpectrumIncMember" xlink:label="rgen_SpectrumIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfessionalFees" xlink:label="us-gaap_ProfessionalFees"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseAndRentalExpense" xlink:label="us-gaap_LeaseAndRentalExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRent" xlink:label="us-gaap_PaymentsForRent"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="rgen_ScheduleOfRelatedPartyTable" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" 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_RelatedPartyDomain" xlink:to="us-gaap_PrincipalOwnerMember" 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_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="srt_TitleOfIndividualAxis" 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_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain" 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_OwnershipDomain" xlink:to="rgen_SpectrumIncMember" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_OwnershipAxis" xlink:to="srt_OwnershipDomain" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_ProfessionalFees" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_LeaseAndRentalExpense" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="srt_RangeAxis" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_PaymentsForRent" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="srt_OwnershipAxis" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="us-gaap_SubsidiarySaleOfStockAxis" order="4" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="us-gaap_RelatedPartyTransactionLineItems" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MilliporeSigmaMember" xlink:label="rgen_MilliporeSigmaMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="us-gaap_ScheduleOfProductInformationTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PfizerMember" xlink:label="rgen_PfizerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PuroliteMember" xlink:label="rgen_PuroliteMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" xlink:label="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CustomerNumberOneMember" xlink:label="rgen_CustomerNumberOneMember"/>
    <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/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/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="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" 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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="rgen_MilliporeSigmaMember" 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_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="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" 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_SegmentReportingAbstract" xlink:to="us-gaap_ScheduleOfProductInformationTable" 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="rgen_MilliporeSigmaMember" xlink:to="rgen_PfizerMember" 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_ScheduleOfProductInformationTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" 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_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_RangeMember" xlink:to="srt_MinimumMember" 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_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" 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_StatementLineItems" 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="rgen_MilliporeSigmaMember" xlink:to="rgen_PuroliteMember" 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_ScheduleOfProductInformationTable" 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_ConcentrationRiskBenchmarkDomain" xlink:to="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" 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_RevenueFromContractWithCustomerIncludingAssessedTax" 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="rgen_MilliporeSigmaMember" xlink:to="rgen_CustomerNumberOneMember" 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_ScheduleOfProductInformationTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" 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_ScheduleOfProductInformationTable" xlink:to="srt_MajorCustomersAxis" 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_ScheduleOfProductInformationTable" xlink:to="us-gaap_StatementLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="us-gaap_RisksAndUncertaintiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTable" xlink:label="us-gaap_ConcentrationRiskTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NorthAmericaMember" xlink:label="srt_NorthAmericaMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EuropeMember" xlink:label="srt_EuropeMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ApacOtherMember" xlink:label="rgen_ApacOtherMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" 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_RisksAndUncertaintiesAbstract" xlink:to="us-gaap_ConcentrationRiskTable" 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_SegmentGeographicalDomain" xlink:to="srt_NorthAmericaMember" 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_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" 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_SalesRevenueNetMember" 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_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_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" 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_GeographicConcentrationRiskMember" 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_SegmentGeographicalDomain" xlink:to="srt_EuropeMember" 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_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" 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_SegmentGeographicalDomain" xlink:to="rgen_ApacOtherMember" 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_ConcentrationRiskTable" xlink:to="srt_StatementGeographicalAxis" 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_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ChiefCommercialOfficerMember" xlink:label="rgen_ChiefCommercialOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateDomain" xlink:label="us-gaap_AwardDateDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TwoThousandAndTwentyFourMember" xlink:label="rgen_TwoThousandAndTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MetenovaAbMember" xlink:label="rgen_MetenovaAbMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateAxis" xlink:label="us-gaap_AwardDateAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAcquiredFromAcquisition" xlink:label="us-gaap_CashAcquiredFromAcquisition"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionsToPurchaseCommonStockMember" xlink:label="rgen_OptionsToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PerformanceBasedRestrictedStockUnitsMember" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="rgen_ChiefCommercialOfficerMember" 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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardDateDomain" xlink:to="rgen_TwoThousandAndTwentyFourMember" 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/label"/>
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" 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="rgen_MetenovaAbMember" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_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_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTypeAxis" 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_AwardDateAxis" xlink:to="us-gaap_AwardDateDomain" 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_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_SubsequentEventLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" 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_SubsequentEventTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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_SubsequentEventLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" 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_SubsequentEventTable" xlink:to="us-gaap_AwardTypeAxis" 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_SubsequentEventLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" 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_SubsequentEventTable" xlink:to="srt_TitleOfIndividualAxis" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="4.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_SubsequentEventLineItems" xlink:to="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" 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_SubsequentEventTable" xlink:to="us-gaap_AwardDateAxis" order="4" 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="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" order="5.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_CashAcquiredFromAcquisition" 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_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventLineItems" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_OptionsToPurchaseCommonStockMember" 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="rgen_PerformanceBasedRestrictedStockUnitsMember" order="7.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>rgen-20230930_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Linkbase Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2023-10-31T10:45:28.8930+00:00 -->
<!-- Copyright (c) 2023 Donnelly Financial Solutions, Inc. All Rights Reserved. -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link: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:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedBalanceSheets" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity" xlink:href="rgen-20230930.xsd#ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfCashFlows" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical" xlink:href="rgen-20230930.xsd#StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysIncTables" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#FairValueMeasurementAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail" xlink:href="rgen-20230930.xsd#DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail" xlink:href="rgen-20230930.xsd#DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail" xlink:href="rgen-20230930.xsd#DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail" xlink:href="rgen-20230930.xsd#DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#GoodwillAndIntangibleAssetsAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:href="rgen-20230930.xsd#DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:href="rgen-20230930.xsd#DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#ConvertibleSeniorNotesAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail" xlink:href="rgen-20230930.xsd#ConvertibleSeniorNotesConvertibleDebtDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#StockholdersEquityAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquityStockbasedCompensationExpenseDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfOptionActivityDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail" xlink:href="rgen-20230930.xsd#DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#IncomeTaxesAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#DisclosureEarningsPerShareAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:href="rgen-20230930.xsd#DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#RelatedPartyTransactionsAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#SegmentReportingAdditionalInformationDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail" xlink:href="rgen-20230930.xsd#DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail" xlink:href="rgen-20230930.xsd#SubsequentEventAdditionalInformationDetail" xlink:type="simple"/>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleNotesPayableCurrent" xlink:label="us-gaap_ConvertibleNotesPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
    <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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" 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_AssetsAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" 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_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" 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="dei_LegalEntityAxis" 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_AssetsAbstract" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain_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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent" 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_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" 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_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" 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_LiabilitiesAndStockholdersEquityAbstract" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" 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_AssetsAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" 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_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" 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_AssetsAbstract" xlink:to="us-gaap_Goodwill" 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_StockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_ConvertibleNotesPayableCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" 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_AssetsAbstract" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" 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_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" 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_AssetsAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" 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_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesNoncurrent" 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_AssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_Liabilities" 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_AssetsAbstract" xlink:to="us-gaap_AssetsNoncurrent" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" 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_AssetsAbstract" xlink:to="us-gaap_Assets" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
    <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/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" 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_AllowanceForDoubtfulAccountsReceivableCurrent" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_PreferredStockParOrStatedValuePerShare" 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_PreferredStockSharesAuthorized" 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_PreferredStockSharesIssued" 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_PreferredStockSharesOutstanding" 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_CommonStockParOrStatedValuePerShare" 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_CommonStockSharesAuthorized" 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_CommonStockSharesIssued" 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_CommonStockSharesOutstanding" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract" xlink:label="us-gaap_RevenuesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_OtherNonoperatingIncomeExpenseAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNet" xlink:label="us-gaap_InvestmentIncomeNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpensesAbstract" xlink:label="us-gaap_CostsAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyMember" xlink:label="us-gaap_RoyaltyMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AmortizationOfDebtIssuanceCost" xlink:label="rgen_AmortizationOfDebtIssuanceCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses" xlink:label="us-gaap_CostsAndExpenses"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax"/>
    <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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" 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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" 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="us-gaap_ProductMember" 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="dei_LegalEntityAxis" 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_RevenuesAbstract" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" 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_RevenuesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" 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/domain-member" xlink:from="us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InvestmentIncomeNet" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_CostOfGoodsAndServicesSold" 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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" 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="us-gaap_RoyaltyMember" 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="srt_ProductOrServiceAxis" 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_CostsAndExpensesAbstract" 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_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestExpense" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpense" 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_OperatingIncomeLoss" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="rgen_AmortizationOfDebtIssuanceCost" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" 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_OtherNonoperatingIncomeExpenseAbstract" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" 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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" 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_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" 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_CostsAndExpensesAbstract" xlink:to="us-gaap_CostsAndExpenses" 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_IncomeTaxExpenseBenefit" 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_NetIncomeLoss" 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_EarningsPerShareAbstract" 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_WeightedAverageNumberOfSharesOutstandingAbstract" 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="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" 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="us-gaap_ComprehensiveIncomeNetOfTax" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TrueUpCostsDecember2020Member" xlink:label="rgen_TrueUpCostsDecember2020Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate202006Member" xlink:label="us-gaap_AccountingStandardsUpdate202006Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" xlink:label="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" xlink:label="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalOther" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther"/>
    <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_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/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/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" 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/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_TrueUpCostsDecember2020Member" 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_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate202006Member" 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_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" 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_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember_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_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_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" 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_AdjustmentsForNewAccountingPronouncementsAxis" 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_SharesOutstanding" 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="rgen_AvitideIncMember" 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_AccumulatedOtherComprehensiveIncomeMember" 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_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_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_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_StockIssuedDuringPeriodValueConversionOfUnits" 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_StockIssuedDuringPeriodSharesConversionOfUnits" 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_StockIssuedDuringPeriodValueShareBasedCompensation" 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_StockIssuedDuringPeriodSharesShareBasedCompensation" 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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" 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_SharesPaidForTaxWithholdingForShareBasedCompensation" 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_StockIssuedDuringPeriodValueAcquisitions" 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="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" 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="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" 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="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" 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_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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_StatementLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" 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_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="us-gaap_AmortizationOfFinancingCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssued1" xlink:label="us-gaap_StockIssued1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="us-gaap_RepaymentsOfConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="us-gaap_PaymentsToAcquireSoftware"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" xlink:label="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashInterestIncome" xlink:label="rgen_NoncashInterestIncome"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
    <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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationAndAmortization" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" 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="dei_LegalEntityAxis" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract" 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="rgen_FlexbiosysIncMember" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" 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_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AmortizationOfFinancingCosts" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" 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_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_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" 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="rgen_AvitideIncMember" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" 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_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_StockIssued1" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfConvertibleDebt" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireSoftware" 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_SupplementalCashFlowElementsAbstract" xlink:to="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" 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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock" 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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="rgen_NoncashInterestIncome" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" 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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_OtherNoncashIncomeExpense" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" 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_SupplementalCashFlowElementsAbstract" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <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/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" 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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" 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="rgen_FlexbiosysIncMember" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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/hypercube-dimension" xlink:from="us-gaap_StatementTable" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideIncMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <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_BusinessAcquisitionLineItems" 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/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_BusinessAcquisitionLineItems" xlink:to="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" 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="rgen_FlexbiosysIncMember" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsMember" xlink:label="us-gaap_CashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_default"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashAndMoneyMarketFundsMember" xlink:label="rgen_CashAndMoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember" xlink:label="us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesAmortizedCostBasis" xlink:label="rgen_AvailableForSaleSecuritiesAmortizedCostBasis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" xlink:label="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAmortisedCost" xlink:label="rgen_DebtSecuritiesHeldToMaturityAmortisedCost"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" xlink:label="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" xlink:label="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" xlink:label="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesEstimatedFairValue" xlink:label="rgen_AvailableForSaleSecuritiesEstimatedFairValue"/>
    <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_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_FairValueByBalanceSheetGroupingTable" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_InvestmentTypeAxis" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" 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_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" 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_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember_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_InvestmentTypeCategorizationMember" xlink:to="us-gaap_CashAndCashEquivalentsMember" 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_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" 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_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="rgen_CashAndMoneyMarketFundsMember" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_CashAndCashEquivalentsAxis" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" 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_InvestmentTypeCategorizationMember" xlink:to="us-gaap_USTreasuryBillSecuritiesMember" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_AvailableForSaleSecuritiesAmortizedCostBasis" 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_InvestmentTypeCategorizationMember" xlink:to="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityAmortisedCost" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" 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_CashAndCashEquivalentsLineItems" xlink:to="rgen_AvailableForSaleSecuritiesEstimatedFairValue" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="us-gaap_MoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShortTermContingentConsideration" xlink:label="rgen_ShortTermContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_LongTermContingentConsideration" xlink:label="rgen_LongTermContingentConsideration"/>
    <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_FairValueByBalanceSheetGroupingTable" 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_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" 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_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_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/dimension-domain" xlink:from="us-gaap_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" 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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_MoneyMarketFundsMember" 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="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_CashAndCashEquivalentsAxis" 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="rgen_ShortTermContingentConsideration" 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_FairValueInputsLevel3Member" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_LongTermContingentConsideration" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="rgen_SummaryOfSignificantAccountingPoliciesTable" 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="rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod" 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="rgen_AvitideIncMember" 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="rgen_SummaryOfSignificantAccountingPoliciesTable" 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/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="rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" 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="rgen_FlexbiosysIncMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ContingentConsiderationMember" xlink:label="rgen_ContingentConsiderationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <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_DerivativeContractTypeDomain" xlink:to="rgen_ContingentConsiderationMember" 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/domain-member" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_LiabilitiesFairValueDisclosure" 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_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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ContingentConsiderationMember" xlink:label="rgen_ContingentConsiderationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="us-gaap_MeasurementInputTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputProbabilityOfSuccessMember" xlink:label="rgen_MeasurementInputProbabilityOfSuccessMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueDomain" xlink:label="us-gaap_ValuationTechniqueDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MonteCarloSimulationMember" xlink:label="rgen_MonteCarloSimulationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="us-gaap_MeasurementInputTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="us-gaap_MeasurementInputTypeDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideAndFlexbiosysMember" xlink:label="rgen_AvitideAndFlexbiosysMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RDAndCommercializationBasedPaymentsMember" xlink:label="rgen_RDAndCommercializationBasedPaymentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueAxis" xlink:label="us-gaap_ValuationTechniqueAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueDomain" xlink:label="us-gaap_ValuationTechniqueDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputEarnoutDiscountRateMember" xlink:label="rgen_MeasurementInputEarnoutDiscountRateMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ProbabilityWeightedPresentValueMember" xlink:label="rgen_ProbabilityWeightedPresentValueMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ProbabilityOfSuccess" xlink:label="rgen_ProbabilityOfSuccess"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RevenueAndVolumeBasedPaymentsMember" xlink:label="rgen_RevenueAndVolumeBasedPaymentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputPriceVolatilityMember" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageDiscountRate" xlink:label="rgen_WeightedAverageDiscountRate"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ManufacturingLineExpansionsMember" xlink:label="rgen_ManufacturingLineExpansionsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputRevenueVolumeDiscountRateMember" xlink:label="rgen_MeasurementInputRevenueVolumeDiscountRateMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_VolatilityRateOfContingentConsideration" xlink:label="rgen_VolatilityRateOfContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RevenueAndVolumeDiscountRate" xlink:label="rgen_RevenueAndVolumeDiscountRate"/>
    <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_DerivativeContractTypeDomain" xlink:to="rgen_ContingentConsiderationMember" 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-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_MeasurementInputTypeDomain" xlink:to="rgen_MeasurementInputProbabilityOfSuccessMember" 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_ValuationTechniqueDomain" xlink:to="rgen_MonteCarloSimulationMember" 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_LiabilitiesFairValueDisclosure" 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_MeasurementInputTypeAxis" xlink:to="us-gaap_MeasurementInputTypeDomain" 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_MeasurementInputTypeAxis" xlink:to="us-gaap_MeasurementInputTypeDomain_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/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/hypercube-dimension" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_DerivativeInstrumentRiskAxis" 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="rgen_AvitideAndFlexbiosysMember" 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/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="rgen_RDAndCommercializationBasedPaymentsMember" 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_ValuationTechniqueAxis" xlink:to="us-gaap_ValuationTechniqueDomain" 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_ValuationTechniqueAxis" xlink:to="us-gaap_ValuationTechniqueDomain_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="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_MeasurementInputTypeDomain" xlink:to="rgen_MeasurementInputEarnoutDiscountRateMember" 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_ValuationTechniqueDomain" xlink:to="rgen_ProbabilityWeightedPresentValueMember" 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="rgen_ProbabilityOfSuccess" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" 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_IncomeStatementLocationDomain" xlink:to="rgen_RevenueAndVolumeBasedPaymentsMember" 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_MeasurementInputTypeDomain" xlink:to="us-gaap_MeasurementInputPriceVolatilityMember" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_WeightedAverageDiscountRate" 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="srt_RangeAxis" 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_IncomeStatementLocationDomain" xlink:to="rgen_ManufacturingLineExpansionsMember" 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_MeasurementInputTypeDomain" xlink:to="rgen_MeasurementInputRevenueVolumeDiscountRateMember" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_DerivativeFixedInterestRate" 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_IncomeStatementLocationAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_VolatilityRateOfContingentConsideration" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_ValuationTechniqueAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="rgen_RevenueAndVolumeDiscountRate" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_MeasurementInputTypeAxis" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:label="rgen_BusinessCombinationConsiderationIndemnificationEscrow"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" xlink:label="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <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_BusinessAcquisitionLineItems" 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/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_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/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_BusinessAcquisitionLineItems" 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/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_FlexbiosysIncMember" 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/hypercube-dimension" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" 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_BusinessAcquisitionLineItems" 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="us-gaap_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationConsiderationIndemnificationEscrow" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationAcquisitionRelatedCosts" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_Goodwill" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <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_BusinessAcquisitionLineItems" 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/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_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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" 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="rgen_FlexbiosysIncMember" 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-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="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="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/domain-member" xlink:from="us-gaap_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" 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="us-gaap_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_Goodwill" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" 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_BusinessAcquisitionLineItems" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" 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_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember"/>
    <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_BusinessAcquisitionLineItems" 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/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_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_BusinessAcquisitionLineItems" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_FlexbiosysIncMember" 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-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" 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="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/domain-member" xlink:from="us-gaap_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" 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_TradeNamesMember" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashinventorywriteOff" xlink:label="rgen_NoncashinventorywriteOff"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <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_RestructuringCostAndReserveLineItems" 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/domain-member" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" xlink:to="rgen_NoncashinventorywriteOff" 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_MaximumMember" 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_ScheduleOfRestructuringAndRelatedCostsTable" 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/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCharges" 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_MinimumMember" 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_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="srt_RangeAxis" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCosts" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeSeveranceMember" xlink:label="us-gaap_EmployeeSeveranceMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryWriteOffMember" xlink:label="rgen_InventoryWriteOffMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AcceleratedDepreciationMember" xlink:label="rgen_AcceleratedDepreciationMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FacilityAndOtherExitCostsMember" xlink:label="rgen_FacilityAndOtherExitCostsMember"/>
    <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_RestructuringCostAndReserveLineItems" 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/domain-member" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" 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/dimension-domain" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" 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_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain_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_ScheduleOfRestructuringAndRelatedCostsTable" 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/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/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" 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_TypeOfRestructuringDomain" xlink:to="us-gaap_EmployeeSeveranceMember" 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_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="us-gaap_RestructuringCostAndReserveAxis" 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="us-gaap_ResearchAndDevelopmentExpenseMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_InventoryWriteOffMember" 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_IncomeStatementLocationDomain" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_AcceleratedDepreciationMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_FacilityAndOtherExitCostsMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeSeveranceMember" xlink:label="us-gaap_EmployeeSeveranceMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryWriteOffMember" xlink:label="rgen_InventoryWriteOffMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringReserveSettledWithoutCash2" xlink:label="us-gaap_RestructuringReserveSettledWithoutCash2"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryAdjustmentsMember" xlink:label="rgen_InventoryAdjustmentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringReserve" xlink:label="us-gaap_RestructuringReserve"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AcceleratedDepreciationMember" xlink:label="rgen_AcceleratedDepreciationMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FacilityExitAndOtherExitCostsMember" xlink:label="rgen_FacilityExitAndOtherExitCostsMember"/>
    <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_RestructuringCostAndReserveLineItems" 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/domain-member" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" 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/dimension-domain" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" 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="us-gaap_RestructuringCostAndReserveAxis" 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_TypeOfRestructuringDomain" xlink:to="us-gaap_EmployeeSeveranceMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_PaymentsForRestructuring" 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_TypeOfRestructuringDomain" xlink:to="rgen_InventoryWriteOffMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringReserveSettledWithoutCash2" 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_TypeOfRestructuringDomain" xlink:to="rgen_InventoryAdjustmentsMember" 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_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringReserve" 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_TypeOfRestructuringDomain" xlink:to="rgen_AcceleratedDepreciationMember" 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_TypeOfRestructuringDomain" xlink:to="rgen_FacilityExitAndOtherExitCostsMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyMember" xlink:label="us-gaap_RoyaltyMember"/>
    <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/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="srt_ProductsAndServicesDomain" xlink:to="us-gaap_ProductMember" 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/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" 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="us-gaap_RoyaltyMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BioflexMember" xlink:label="rgen_BioflexMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <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/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_Goodwill" 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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_BioflexMember" 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_GoodwillLineItems" xlink:to="us-gaap_GoodwillAcquiredDuringPeriod" 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="rgen_AvitideIncMember" 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_GoodwillPurchaseAccountingAdjustments" 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="rgen_FlexbiosysIncMember" 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_GoodwillLineItems" xlink:to="us-gaap_GoodwillForeignCurrencyTranslationGainLoss" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewDateOfAnnualGoodwillImpairmentTest" xlink:label="us-gaap_NewDateOfAnnualGoodwillImpairmentTest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest" xlink:label="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_FiniteLivedIntangibleLiabilitiesLineItems" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_NewDateOfAnnualGoodwillImpairmentTest" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IntangibleAssetsLineItems" xlink:label="rgen_IntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfIntangibleAssetsTable" xlink:label="rgen_ScheduleOfIntangibleAssetsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TrademarkMember" xlink:label="rgen_TrademarkMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IndefiniteLivedIntangibleAssetsNet" xlink:label="rgen_IndefiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksMember" xlink:label="us-gaap_TrademarksMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="us-gaap_OtherIntangibleAssetsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_IntangibleAssetsLineItems" xlink:to="rgen_ScheduleOfIntangibleAssetsTable" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" 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="rgen_ScheduleOfIntangibleAssetsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" 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_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" 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_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_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_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="rgen_TrademarkMember" 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_DevelopedTechnologyRightsMember" 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="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" 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="rgen_ScheduleOfIntangibleAssetsTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" 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_PatentsMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" 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_CustomerRelationshipsMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="rgen_IndefiniteLivedIntangibleAssetsNet" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TrademarksMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_OtherIntangibleAssetsMember" 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="rgen_IntangibleAssetsLineItems" xlink:to="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" 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="rgen_IntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" 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_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" 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="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryLineItems" xlink:label="us-gaap_InventoryLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryCurrentTable" xlink:label="us-gaap_InventoryCurrentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <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_InventoryLineItems" xlink:to="us-gaap_InventoryCurrentTable" 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_InventoryLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_InventoryCurrentTable" xlink:to="dei_LegalEntityAxis" 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_InventoryLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" 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_InventoryLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" 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_InventoryLineItems" xlink:to="us-gaap_InventoryNet" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Land" xlink:label="us-gaap_Land"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="us-gaap_PropertyPlantAndEquipmentOther"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_Land" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="dei_LegalEntityAxis" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_BuildingsAndImprovementsGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_LeaseholdImprovementsGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_MachineryAndEquipmentGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FurnitureAndFixturesGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_CapitalizedComputerSoftwareGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ConstructionInProgressGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentOther" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" 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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:label="rgen_ScheduleOfAccruedLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfAccruedLiabilitiesTable" xlink:label="rgen_ScheduleOfAccruedLiabilitiesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="us-gaap_DeferredRevenueCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="rgen_ScheduleOfAccruedLiabilitiesTable" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_DeferredRevenueCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_AccruedIncomeTaxesCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" 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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrent" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="us-gaap_ProceedsFromConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="us-gaap_DebtInstrumentInterestRateTerms"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtFairValue" xlink:label="us-gaap_LongTermDebtFairValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:label="rgen_OptionToPurchaseAdditionalDebtFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtInstrumentConvertibleIntoEquity" xlink:label="rgen_DebtInstrumentConvertibleIntoEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdTradingDays" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdTradingDays"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_LossOnDebtConversion" xlink:label="rgen_LossOnDebtConversion"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" xlink:label="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted"/>
    <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/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentAxis" 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="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" 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_DebtInstrumentFaceAmount" 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="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" 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_ProceedsFromConvertibleDebt" 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_DebtInstrumentInterestRateTerms" 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_DebtInstrumentMaturityDate" 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:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtFairValue" 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_DebtInstrumentLineItems" xlink:to="rgen_OptionToPurchaseAdditionalDebtFaceAmount" 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_DebtInstrumentLineItems" xlink:to="rgen_DebtInstrumentConvertibleIntoEquity" 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_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdTradingDays" 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_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" 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_DebtInstrumentLineItems" xlink:to="rgen_LossOnDebtConversion" 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_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" 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_DebtInstrumentLineItems" xlink:to="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleNotesPayableCurrent" xlink:label="us-gaap_ConvertibleNotesPayableCurrent"/>
    <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/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentAxis" 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="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" 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_DebtInstrumentCarryingAmount" 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="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DeferredFinanceCostsNet" 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_ConvertibleNotesPayableCurrent" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockholdersEquityNoteDisclosureLineItems" xlink:label="rgen_StockholdersEquityNoteDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockholdersEquityNoteDisclosureTable" xlink:label="rgen_StockholdersEquityNoteDisclosureTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ChiefFinancialOfficerMember" xlink:label="srt_ChiefFinancialOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockOptionAndIncentivePlanMember" xlink:label="rgen_StockOptionAndIncentivePlanMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateDomain" xlink:label="us-gaap_AwardDateDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TwoThousandAndTwentyFourMember" xlink:label="rgen_TwoThousandAndTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideLlcMember" xlink:label="rgen_AvitideLlcMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateAxis" xlink:label="us-gaap_AwardDateAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateDomain" xlink:label="us-gaap_AwardDateDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonEmployeeDirectorStockOptionMember" xlink:label="rgen_NonEmployeeDirectorStockOptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_UnvestedOptionsMember" xlink:label="rgen_UnvestedOptionsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionsToPurchaseCommonStockMember" xlink:label="rgen_OptionsToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PerformanceBasedRestrictedStockUnitsMember" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:label="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_EarnoutConsiderationEarned" xlink:label="rgen_EarnoutConsiderationEarned"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="rgen_StockholdersEquityNoteDisclosureTable" 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_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ChiefFinancialOfficerMember" 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="us-gaap_ShareBasedCompensationAwardTrancheOneMember" 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="rgen_StockOptionAndIncentivePlanMember" 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_AwardDateDomain" xlink:to="rgen_TwoThousandAndTwentyFourMember" 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/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="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="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" 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-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_BusinessAcquisitionAcquireeDomain" xlink:to="rgen_AvitideLlcMember" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="dei_LegalEntityAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" 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_AwardDateAxis" xlink:to="us-gaap_AwardDateDomain" 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_AwardDateAxis" xlink:to="us-gaap_AwardDateDomain_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_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="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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_NonEmployeeDirectorStockOptionMember" 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="rgen_StockholdersEquityNoteDisclosureTable" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharePrice" 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="rgen_UnvestedOptionsMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_AwardDateAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" 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="rgen_RestrictedStockAndPerformanceStockUnitsMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="srt_RangeAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" 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="us-gaap_RestrictedStockUnitsRSUMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_VestingAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" 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="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_PlanNameAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_OptionsToPurchaseCommonStockMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="us-gaap_BusinessAcquisitionAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_PerformanceBasedRestrictedStockUnitsMember" 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="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="srt_TitleOfIndividualAxis" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_CommonStockSharesIssued" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="rgen_EarnoutConsiderationEarned" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" 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="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" 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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_ShareBasedCompensation" 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/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" 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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_IncomeStatementLocationAxis" 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="us-gaap_ResearchAndDevelopmentExpenseMember" 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_IncomeStatementLocationDomain" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" 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="dei_LegalEntityAxis" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" 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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonExecutiveMember" xlink:label="rgen_NonExecutiveMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ExecutiveOfficerMember" xlink:label="srt_ExecutiveOfficerMember"/>
    <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="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="rgen_NonExecutiveMember" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="rgen_PercentageOfSharesSubjectToForfeiture" 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_EmployeeStockOptionMember" 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="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ExecutiveOfficerMember" 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="dei_LegalEntityAxis" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_TitleOfIndividualAxis" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonExecutiveMember" xlink:label="rgen_NonExecutiveMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ExecutiveOfficerMember" xlink:label="srt_ExecutiveOfficerMember"/>
    <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="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="rgen_NonExecutiveMember" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="rgen_PercentageOfSharesSubjectToForfeiture" 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="rgen_RestrictedStockAndPerformanceStockUnitsMember" 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="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_ExecutiveOfficerMember" 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="dei_LegalEntityAxis" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_TitleOfIndividualAxis" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CommitmentsAndContingenciesLineItems" xlink:label="rgen_CommitmentsAndContingenciesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CommitmentsAndContingenciesTable" xlink:label="rgen_CommitmentsAndContingenciesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NGLImpactAMember" xlink:label="rgen_NGLImpactAMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentArrangementMember" xlink:label="us-gaap_ResearchAndDevelopmentArrangementMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyExpense" xlink:label="us-gaap_RoyaltyExpense"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_CommitmentsAndContingenciesLineItems" xlink:to="rgen_CommitmentsAndContingenciesTable" 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="rgen_NGLImpactAMember" 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="rgen_CommitmentsAndContingenciesTable" 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_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:to="us-gaap_ResearchAndDevelopmentArrangementMember" 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_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" 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_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_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/domain-member" xlink:from="rgen_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount" 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="rgen_CommitmentsAndContingenciesTable" xlink:to="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" 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="rgen_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_RoyaltyExpense" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncomeTaxesLineItems" xlink:label="rgen_IncomeTaxesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncomeTaxesTable" xlink:label="rgen_IncomeTaxesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InflationReductionActOfTwoThousandTwentyTwoMember" xlink:label="rgen_InflationReductionActOfTwoThousandTwentyTwoMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfCurrentFederalTaxExpenseBenefit" xlink:label="rgen_PercentageOfCurrentFederalTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentOfExciseTaxOnNetStockRepurchases" xlink:label="rgen_PercentOfExciseTaxOnNetStockRepurchases"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_IncomeTaxesLineItems" xlink:to="rgen_IncomeTaxesTable" 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="rgen_IncomeTaxesLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" 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="rgen_IncomeTaxesTable" xlink:to="us-gaap_IncomeTaxAuthorityAxis" 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_IncomeTaxAuthorityDomain" xlink:to="rgen_InflationReductionActOfTwoThousandTwentyTwoMember" 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_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain" 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_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain_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="rgen_IncomeTaxesLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" 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="rgen_IncomeTaxesLineItems" xlink:to="rgen_PercentageOfCurrentFederalTaxExpenseBenefit" 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="rgen_IncomeTaxesLineItems" xlink:to="rgen_PercentOfExciseTaxOnNetStockRepurchases" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate202006Member" xlink:label="us-gaap_AccountingStandardsUpdate202006Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DilutiveEffectOnSharesOfConversionPremium" xlink:label="rgen_DilutiveEffectOnSharesOfConversionPremium"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestOnConvertibleDebtNetOfTax" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax"/>
    <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/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-domain" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" 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_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain_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="rgen_RestrictedStockAndPerformanceStockUnitsMember" 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="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" 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/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" 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/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate202006Member" 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-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" 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_StatementClassOfStockAxis" 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_DebtInstrumentFaceAmount" 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_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_StatementLineItems" xlink:to="rgen_DilutiveEffectOnSharesOfConversionPremium" 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_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" 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_WeightedAverageNumberOfDilutedSharesOutstanding" 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_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" 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_InterestOnConvertibleDebtNetOfTax" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:label="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="us-gaap_WeightedAverageNumberOfSharesRestrictedStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DilutiveSecuritiesAbstract" xlink:label="us-gaap_DilutiveSecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestOnConvertibleDebtNetOfTax" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NumberOfSharesBasicOutstanding" xlink:label="rgen_NumberOfSharesBasicOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesRestrictedStock" 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_DilutiveSecuritiesAbstract" xlink:to="us-gaap_InterestOnConvertibleDebtNetOfTax" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:to="dei_LegalEntityAxis" 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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" 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_EarningsPerShareBasicAbstract" xlink:to="rgen_NumberOfSharesBasicOutstanding" 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_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLoss" 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="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" 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_DilutiveSecuritiesAbstract" xlink:to="us-gaap_NetIncomeLossAttributableToParentDiluted" 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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_DilutiveSecuritiesAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_EarningsPerShareBasicAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" 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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" 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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="us-gaap_EarningsPerShareAbstract" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfRelatedPartyTable" xlink:label="rgen_ScheduleOfRelatedPartyTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrincipalOwnerMember" xlink:label="us-gaap_PrincipalOwnerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SpectrumIncMember" xlink:label="rgen_SpectrumIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfessionalFees" xlink:label="us-gaap_ProfessionalFees"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseAndRentalExpense" xlink:label="us-gaap_LeaseAndRentalExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRent" xlink:label="us-gaap_PaymentsForRent"/>
    <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_RelatedPartyTransactionLineItems" xlink:to="rgen_ScheduleOfRelatedPartyTable" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" 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_RelatedPartyDomain" xlink:to="us-gaap_PrincipalOwnerMember" 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_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" 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_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain_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="rgen_ScheduleOfRelatedPartyTable" xlink:to="srt_TitleOfIndividualAxis" 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/dimension-domain" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain" 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_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_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_OwnershipDomain" xlink:to="rgen_SpectrumIncMember" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_OwnershipAxis" xlink:to="srt_OwnershipDomain" 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_OwnershipAxis" xlink:to="srt_OwnershipDomain_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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_ProfessionalFees" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_LeaseAndRentalExpense" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="srt_RangeAxis" 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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_PaymentsForRent" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="srt_OwnershipAxis" 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="rgen_ScheduleOfRelatedPartyTable" xlink:to="us-gaap_SubsidiarySaleOfStockAxis" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="us-gaap_ScheduleOfProductInformationTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MilliporeSigmaMember" xlink:label="rgen_MilliporeSigmaMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PfizerMember" xlink:label="rgen_PfizerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PuroliteMember" xlink:label="rgen_PuroliteMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" xlink:label="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CustomerNumberOneMember" xlink:label="rgen_CustomerNumberOneMember"/>
    <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_ScheduleOfProductInformationTable" 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="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/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_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" 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="srt_NameOfMajorCustomerDomain" xlink:to="rgen_MilliporeSigmaMember" 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_NumberOfOperatingSegments" 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_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" 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_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain_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="rgen_MilliporeSigmaMember" xlink:to="rgen_PfizerMember" 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_ScheduleOfProductInformationTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" 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="1" 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="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" 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_ConcentrationRiskPercentage1" 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="rgen_MilliporeSigmaMember" xlink:to="rgen_PuroliteMember" 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_ScheduleOfProductInformationTable" xlink:to="srt_RangeAxis" 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_ConcentrationRiskBenchmarkDomain" xlink:to="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" 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_RevenueFromContractWithCustomerIncludingAssessedTax" 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="rgen_MilliporeSigmaMember" xlink:to="rgen_CustomerNumberOneMember" 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_ScheduleOfProductInformationTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" 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_ScheduleOfProductInformationTable" xlink:to="srt_MajorCustomersAxis" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTable" xlink:label="us-gaap_ConcentrationRiskTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_default"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NorthAmericaMember" xlink:label="srt_NorthAmericaMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EuropeMember" xlink:label="srt_EuropeMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ApacOtherMember" xlink:label="rgen_ApacOtherMember"/>
    <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_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskTable" 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_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" 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_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain_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/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="srt_NorthAmericaMember" 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_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" 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_SalesRevenueNetMember" 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/hypercube-dimension" xlink:from="us-gaap_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" 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_GeographicConcentrationRiskMember" 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_SegmentGeographicalDomain" xlink:to="srt_EuropeMember" 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_ConcentrationRiskTable" 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="srt_SegmentGeographicalDomain" xlink:to="rgen_ApacOtherMember" 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_ConcentrationRiskTable" xlink:to="srt_StatementGeographicalAxis" priority="2" use="optional"/>
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ChiefCommercialOfficerMember" xlink:label="rgen_ChiefCommercialOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateDomain" xlink:label="us-gaap_AwardDateDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TwoThousandAndTwentyFourMember" xlink:label="rgen_TwoThousandAndTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MetenovaAbMember" xlink:label="rgen_MetenovaAbMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateAxis" xlink:label="us-gaap_AwardDateAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionsToPurchaseCommonStockMember" xlink:label="rgen_OptionsToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PerformanceBasedRestrictedStockUnitsMember" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAcquiredFromAcquisition" xlink:label="us-gaap_CashAcquiredFromAcquisition"/>
    <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="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="rgen_ChiefCommercialOfficerMember" 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_AwardDateDomain" xlink:to="rgen_TwoThousandAndTwentyFourMember" 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_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/domain-member" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" 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="rgen_MetenovaAbMember" 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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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="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_AwardDateAxis" xlink:to="us-gaap_AwardDateDomain" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="rgen_OptionsToPurchaseCommonStockMember" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" 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_SubsequentEventTable" xlink:to="us-gaap_AwardTypeAxis" 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="rgen_PerformanceBasedRestrictedStockUnitsMember" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" 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_SubsequentEventTable" xlink:to="srt_TitleOfIndividualAxis" 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_SubsequentEventLineItems" xlink:to="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" 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_SubsequentEventTable" xlink:to="us-gaap_AwardDateAxis" 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_SubsequentEventLineItems" xlink:to="us-gaap_CashAcquiredFromAcquisition" priority="2" use="optional"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>9
<FILENAME>rgen-20230930.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Schema Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2023-10-31T10:45:28.7302+00:00 -->
<!-- Copyright (c) 2023 Donnelly Financial Solutions, Inc. All Rights Reserved. -->
<xsd:schema targetNamespace="http://www.repligencorp.com/20230930" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:srt="http://fasb.org/srt/2023" xmlns:ecd-sub="http://xbrl.sec.gov/ecd-sub/2023" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:rgen="http://www.repligencorp.com/20230930" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" 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/dei/2023/dei-2023.xsd" namespace="http://xbrl.sec.gov/dei/2023"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd" namespace="http://xbrl.sec.gov/ecd-sub/2023"/>
  <xsd:import schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" namespace="http://www.xbrl.org/dtr/type/2022-03-31"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd" namespace="http://fasb.org/us-gaap/2023"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd" namespace="http://fasb.org/srt/2023"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rgen-20230930_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:title="Labels link" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rgen-20230930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:title="Presentation link" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rgen-20230930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:title="Definition link" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="rgen-20230930_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:title="Calculation link" xlink:type="simple"/>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/CoverPage" id="CoverPage">
        <link:definition>100000 - Document - Cover Page</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.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets" id="StatementCondensedConsolidatedBalanceSheets">
        <link:definition>100010 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" id="StatementCondensedConsolidatedBalanceSheetsParenthetical">
        <link:definition>100020 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" id="StatementCondensedConsolidatedStatementsOfComprehensiveIncome">
        <link:definition>100030 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity" id="ConsolidatedStatementsOfStockholdersEquity">
        <link:definition>100040 - Statement - CONSOLIDATED STATEMENTS OF 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.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows" id="StatementCondensedConsolidatedStatementsOfCashFlows">
        <link:definition>100050 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical" id="StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical">
        <link:definition>100060 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (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.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies" id="SummaryOfSignificantAccountingPolicies">
        <link:definition>995455 - Disclosure - Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements" id="FairValueMeasurements">
        <link:definition>995465 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc" id="DisclosureAcquisitionOfFlexbiosysInc">
        <link:definition>995475 - Disclosure - Acquisition of FlexBiosys, Inc</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.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan" id="DisclosureRestructuringPlan">
        <link:definition>995485 - Disclosure - Restructuring Plan</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.repligencorp.com/20230930/taxonomy/role/RevenueRecognition" id="RevenueRecognition">
        <link:definition>995495 - 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.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets" id="GoodwillAndIntangibleAssets">
        <link:definition>995505 - Disclosure - Goodwill and Intangible Assets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail" id="ConsolidatedBalanceSheetDetail">
        <link:definition>995515 - Disclosure - Consolidated Balance Sheet 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.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes" id="ConvertibleSeniorNotes">
        <link:definition>995525 - Disclosure - Convertible Senior Notes</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.repligencorp.com/20230930/taxonomy/role/StockholdersEquity" id="StockholdersEquity">
        <link:definition>995535 - 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.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
        <link:definition>995545 - 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.repligencorp.com/20230930/taxonomy/role/IncomeTaxes" id="IncomeTaxes">
        <link:definition>995555 - 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.repligencorp.com/20230930/taxonomy/role/EarningsPerShare" id="EarningsPerShare">
        <link:definition>995565 - 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.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactions" id="RelatedPartyTransactions">
        <link:definition>995575 - Disclosure - Related Party Transactions</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.repligencorp.com/20230930/taxonomy/role/SegmentReporting" id="SegmentReporting">
        <link:definition>995585 - Disclosure - Segment Reporting</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSubsequentEvent" id="DisclosureSubsequentEvent">
        <link:definition>995595 - Disclosure - Subsequent Event</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.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies" id="SummaryOfSignificantAccountingPoliciesPolicies">
        <link:definition>995605 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables" id="DisclosureFairValueMeasurementsTables">
        <link:definition>995615 - Disclosure - Fair Value Measurements (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables" id="DisclosureAcquisitionOfFlexbiosysIncTables">
        <link:definition>995625 - Disclosure - Acquisition of FlexBiosys, Inc (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.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables" id="DisclosureRestructuringPlanTables">
        <link:definition>995635 - Disclosure - Restructuring Plan (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.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables" id="RevenueRecognitionTables">
        <link:definition>995645 - 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.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables" id="GoodwillAndIntangibleAssetsTables">
        <link:definition>995655 - Disclosure - Goodwill and Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables" id="ConsolidatedBalanceSheetDetailTables">
        <link:definition>995665 - Disclosure - Consolidated Balance Sheet Detail (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.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables" id="ConvertibleSeniorNotesTables">
        <link:definition>995675 - Disclosure - Convertible Senior Notes (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.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables" id="StockholdersEquityTables">
        <link:definition>995685 - 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.repligencorp.com/20230930/taxonomy/role/EarningsPerShareTables" id="EarningsPerShareTables">
        <link:definition>995695 - 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.repligencorp.com/20230930/taxonomy/role/SegmentReportingTables" id="SegmentReportingTables">
        <link:definition>995705 - Disclosure - Segment Reporting (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.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail" id="DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail">
        <link:definition>995715 - Disclosure - Fair Value Measurements - Summary of Company's Cash, Cash Equivalents and Marketable Securities Held to Maturity (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.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail" id="DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail">
        <link:definition>995725 - Disclosure - Fair Value Measurements - Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity (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.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails" id="DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails">
        <link:definition>995735 - Disclosure - Fair Value Measurements - Schedule of Financial assets and financial liabilities measured at fair value on a 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.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail" id="FairValueMeasurementAdditionalInformationDetail">
        <link:definition>995745 - Disclosure - Fair Value Measurement - 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.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail" id="DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail">
        <link:definition>995755 - Disclosure - Fair Value Measurements - Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout (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.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail" id="DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail">
        <link:definition>995765 - Disclosure - Fair Value Measurements - Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs (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.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail" id="DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail">
        <link:definition>995775 - Disclosure - Acquisition of FlexBiosys, Inc - 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.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail" id="DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail">
        <link:definition>995785 - Disclosure - Acquisition of FlexBiosys, Inc - Fair Value of Net Assets Acquired (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.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail" id="DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail">
        <link:definition>995795 - Disclosure - Acquisitionsof FlexBiosys, Inc - Estimated Useful Life and Fair Value (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.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail" id="DisclosureRestructuringPlanAdditionalInformationDetail">
        <link:definition>995805 - Disclosure - Restructuring Plan - 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.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail" id="DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail">
        <link:definition>995815 - Disclosure - Restructuring Plan - Summary of Restructuring Activities by Type of Cost (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.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail" id="DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail">
        <link:definition>995825 - Disclosure - Restructuring Plan - Summary of Activity Related to Restructuring Plan (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.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail" id="DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail">
        <link:definition>995835 - Disclosure - Revenue Recognition - Summary of 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.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" id="DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail">
        <link:definition>995845 - Disclosure - Revenue Recognition - Summary of Receivables and Deferred Revenue from Contracts with Customers (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.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail" id="DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail">
        <link:definition>995855 - Disclosure - Goodwill and Intangible Assets - Changes in Carrying Value of Goodwill (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" id="GoodwillAndIntangibleAssetsAdditionalInformationDetail">
        <link:definition>995865 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail" id="DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail">
        <link:definition>995875 - Disclosure - Goodwill and Intangible Assets - Schedule of Intangible Assets (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail" id="DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail">
        <link:definition>995885 - Disclosure - Goodwill and Intangible Assets - Amortization Expense for Amortized Intangible Assets (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail" id="DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail">
        <link:definition>995895 - Disclosure - Consolidated Balance Sheet Detail - Schedule of Inventories (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.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail" id="DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail">
        <link:definition>995905 - Disclosure - Consolidated Balance Sheet Detail - Property, Plant and Equipment (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.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail" id="DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail">
        <link:definition>995915 - Disclosure - Consolidated Balance Sheet Detail - Schedule of Accrued Liabilities (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail" id="ConvertibleSeniorNotesAdditionalInformationDetail">
        <link:definition>995925 - Disclosure - Convertible Senior Notes - 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.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail" id="ConvertibleSeniorNotesConvertibleDebtDetail">
        <link:definition>995935 - Disclosure - Convertible Senior Notes - Convertible Debt (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.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails" id="DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails">
        <link:definition>995945 - Disclosure - Convertible Senior Notes - Schedule of convertiable note interest expense (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.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail" id="StockholdersEquityAdditionalInformationDetail">
        <link:definition>995955 - Disclosure - Stockholders' Equity - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail" id="DisclosureStockholdersEquityStockbasedCompensationExpenseDetail">
        <link:definition>995965 - Disclosure - Stockholders' Equity - Stock-Based Compensation Expense (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail" id="DisclosureStockholdersEquitySummaryOfOptionActivityDetail">
        <link:definition>995975 - Disclosure - Stockholders' Equity - Summary of Option Activity (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail" id="DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail">
        <link:definition>995985 - Disclosure - Stockholders' Equity - Summary of Option Activity (Parenthetical) (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.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail" id="DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail">
        <link:definition>995995 - Disclosure - Stockholders' Equity - Summary of Restricted Stock Unit Activity (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail" id="DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail">
        <link:definition>996005 - Disclosure - Stockholders' Equity - Summary of Restricted Stock Unit Activity (Parenthetical) (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.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" id="CommitmentsAndContingenciesAdditionalInformationDetail">
        <link:definition>996015 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail" id="IncomeTaxesAdditionalInformationDetail">
        <link:definition>996025 - Disclosure - Income Taxes - 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.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail" id="DisclosureEarningsPerShareAdditionalInformationDetail">
        <link:definition>996035 - Disclosure - Earnings Per Share - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" id="DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
        <link:definition>996045 - Disclosure - Earnings Per Share - Reconciliation of Basic and Diluted Shares Amounts (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.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail" id="RelatedPartyTransactionsAdditionalInformationDetail">
        <link:definition>996055 - Disclosure - Related Party Transactions - 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.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail" id="SegmentReportingAdditionalInformationDetail">
        <link:definition>996065 - Disclosure - Segment Reporting - 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.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail" id="DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail">
        <link:definition>996075 - Disclosure - Segment Reporting - Percentage of Revenue by Geographic Area (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.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail" id="SubsequentEventAdditionalInformationDetail">
        <link:definition>996085 - Disclosure - Subsequent Event - 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>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element id="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" name="CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" name="IndefiniteLivedIntangibleAssetsAccumulatedAmortization" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_NonEmployeeDirectorStockOptionMember" name="NonEmployeeDirectorStockOptionMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_RDAndCommercializationBasedPaymentsMember" name="RDAndCommercializationBasedPaymentsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_MeasurementInputEarnoutDiscountRateMember" name="MeasurementInputEarnoutDiscountRateMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ReconciliationOfBasicAndDilutedSharesAbstract" name="ReconciliationOfBasicAndDilutedSharesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_MeasurementInputProbabilityOfSuccessMember" name="MeasurementInputProbabilityOfSuccessMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" name="ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_MeasurementInputRevenueVolumeDiscountRateMember" name="MeasurementInputRevenueVolumeDiscountRateMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" name="StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" name="StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_DilutiveEffectOnSharesOfConversionPremium" name="DilutiveEffectOnSharesOfConversionPremium" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" name="ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" name="FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_IntangibleAssetsLineItems" name="IntangibleAssetsLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" name="AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_FlexbiosysIncMember" name="FlexbiosysIncMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_NonExecutiveMember" name="NonExecutiveMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_PercentOfExciseTaxOnNetStockRepurchases" name="PercentOfExciseTaxOnNetStockRepurchases" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_ProbabilityWeightedPresentValueMember" name="ProbabilityWeightedPresentValueMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_InventoryAdjustmentsMember" name="InventoryAdjustmentsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_StockholdersEquityNoteDisclosureLineItems" name="StockholdersEquityNoteDisclosureLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_PercentageOfSharesSubjectToForfeiture" name="PercentageOfSharesSubjectToForfeiture" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_DebtInstrumentConvertibleIntoEquity" name="DebtInstrumentConvertibleIntoEquity" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_IncomeTaxesTable" name="IncomeTaxesTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_CustomerNumberOneMember" name="CustomerNumberOneMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_CashAndMoneyMarketFundsMember" name="CashAndMoneyMarketFundsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" name="IncreasedecreaseInOperatingLeaseRightOfUseAsset" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_RevenueAndVolumeDiscountRate" name="RevenueAndVolumeDiscountRate" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_SummaryOfSignificantAccountingPoliciesTable" name="SummaryOfSignificantAccountingPoliciesTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_PuroliteMember" name="PuroliteMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_EarnoutConsiderationEarned" name="EarnoutConsiderationEarned" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_NGLImpactAMember" name="NGLImpactAMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_AvitideAndFlexbiosysMember" name="AvitideAndFlexbiosysMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" name="GoodwillAndOtherIntangibleAssetsDisclosureAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_FiniteLivedIntangibleLiabilitiesLineItems" name="FiniteLivedIntangibleLiabilitiesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" name="ScheduleOfEarningsPerShareBasicAndDilutedLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_MilliporeSigmaMember" name="MilliporeSigmaMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_LongTermContingentConsideration" name="LongTermContingentConsideration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_DebtSecuritiesHeldToMaturityAmortisedCost" name="DebtSecuritiesHeldToMaturityAmortisedCost" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_MetenovaAbMember" name="MetenovaAbMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_StockholdersEquityNoteDisclosureTable" name="StockholdersEquityNoteDisclosureTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_FacilityAndOtherExitCostsMember" name="FacilityAndOtherExitCostsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" name="DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" name="ScheduleOfEarningsPerShareBasicAndDilutedTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_NumberOfSharesBasicOutstanding" name="NumberOfSharesBasicOutstanding" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_ScheduleOfRelatedPartyTable" name="ScheduleOfRelatedPartyTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ApacOtherMember" name="ApacOtherMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_StockOptionAndIncentivePlanMember" name="StockOptionAndIncentivePlanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_SpectrumIncMember" name="SpectrumIncMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_BioflexMember" name="BioflexMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_RevenueAndVolumeBasedPaymentsMember" name="RevenueAndVolumeBasedPaymentsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_AvailableForSaleSecuritiesEstimatedFairValue" name="AvailableForSaleSecuritiesEstimatedFairValue" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_ScheduleOfIntangibleAssetsTable" name="ScheduleOfIntangibleAssetsTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ManufacturingLineExpansionsMember" name="ManufacturingLineExpansionsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_AvailableForSaleSecuritiesAmortizedCostBasis" name="AvailableForSaleSecuritiesAmortizedCostBasis" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" name="TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ProbabilityOfSuccess" name="ProbabilityOfSuccess" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_ChiefCommercialOfficerMember" name="ChiefCommercialOfficerMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" name="DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_InflationReductionActOfTwoThousandTwentyTwoMember" name="InflationReductionActOfTwoThousandTwentyTwoMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_TwoThousandAndTwentyFourMember" name="TwoThousandAndTwentyFourMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_WeightedAverageDiscountRate" name="WeightedAverageDiscountRate" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_OptionsToPurchaseCommonStockMember" name="OptionsToPurchaseCommonStockMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_PercentageOfCurrentFederalTaxExpenseBenefit" name="PercentageOfCurrentFederalTaxExpenseBenefit" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_NoncashInterestIncome" name="NoncashInterestIncome" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_BusinessCombinationConsiderationIndemnificationEscrow" name="BusinessCombinationConsiderationIndemnificationEscrow" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" name="RestrictedStockAndOptionToPurchaseCommonStockMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" name="CashAndCashEquivalentsAndMoneyMarketFundsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_UnvestedOptionsMember" name="UnvestedOptionsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_AmortizationOfDebtIssuanceCost" name="AmortizationOfDebtIssuanceCost" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_InventoryWriteOffMember" name="InventoryWriteOffMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_VolatilityRateOfContingentConsideration" name="VolatilityRateOfContingentConsideration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_NoncashinventorywriteOff" name="NoncashinventorywriteOff" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_ScheduleOfAccruedLiabilitiesLineItems" name="ScheduleOfAccruedLiabilitiesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_SummaryOfSignificantAccountingPoliciesLineItems" name="SummaryOfSignificantAccountingPoliciesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_AcceleratedDepreciationMember" name="AcceleratedDepreciationMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ScheduleOfAccruedLiabilitiesTable" name="ScheduleOfAccruedLiabilitiesTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="rgen_PfizerMember" name="PfizerMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost" name="DebtSecuritiesMaturityWithinOneYearAmortizedCost" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_AvitideLlcMember" name="AvitideLlcMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ScheduleOfConvertiableNoteInterestExpense" name="ScheduleOfConvertiableNoteInterestExpense" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_ShortTermContingentConsideration" name="ShortTermContingentConsideration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" name="WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_AvitideIncMember" name="AvitideIncMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_CommitmentsAndContingenciesLineItems" name="CommitmentsAndContingenciesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_IndefiniteLivedIntangibleAssetsNet" name="IndefiniteLivedIntangibleAssetsNet" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" name="DebtSecuritiesHeldToMaturityGrossUnrealizedGain" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_OptionToPurchaseAdditionalDebtFaceAmount" name="OptionToPurchaseAdditionalDebtFaceAmount" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" name="DebtSecuritiesHeldToMaturityEstimatedFairValue" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_IncomeTaxesLineItems" name="IncomeTaxesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_ContingentConsiderationMember" name="ContingentConsiderationMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_PerformanceBasedRestrictedStockUnitsMember" name="PerformanceBasedRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_TrueUpCostsDecember2020Member" name="TrueUpCostsDecember2020Member" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_RestrictedStockAndPerformanceStockUnitsMember" name="RestrictedStockAndPerformanceStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_LossOnDebtConversion" name="LossOnDebtConversion" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" name="DebtInstrumentConvertibleIntoEquityNotYetConverted" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="rgen_TrademarkMember" name="TrademarkMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" name="DilutiveSharesEffectOnBasicEarningsPerShareAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_CommitmentsAndContingenciesTable" name="CommitmentsAndContingenciesTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_FacilityExitAndOtherExitCostsMember" name="FacilityExitAndOtherExitCostsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="rgen_MonteCarloSimulationMember" name="MonteCarloSimulationMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>10
<FILENAME>rgen-20230930_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Linkbase Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2023-10-31T10:45:33.7841+00:00 -->
<!-- Copyright (c) 2023 Donnelly Financial Solutions, Inc. All Rights Reserved. -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/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/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" 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="rgen-20230930.xsd#rgen_VolatilityRateOfContingentConsideration" xlink:label="rgen_VolatilityRateOfContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="us-gaap_MoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestOnConvertibleDebtNetOfTax" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAmortisedCost" xlink:label="rgen_DebtSecuritiesHeldToMaturityAmortisedCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveLineItems" xlink:label="us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="us-gaap_PropertyPlantAndEquipmentOther"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IntangibleAssetsLineItems" xlink:label="rgen_IntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:label="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CustomerNumberOneMember" xlink:label="rgen_CustomerNumberOneMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RDAndCommercializationBasedPaymentsMember" xlink:label="rgen_RDAndCommercializationBasedPaymentsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputEarnoutDiscountRateMember" xlink:label="rgen_MeasurementInputEarnoutDiscountRateMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncomeTaxesLineItems" xlink:label="rgen_IncomeTaxesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockOptionAndIncentivePlanMember" xlink:label="rgen_StockOptionAndIncentivePlanMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EuropeMember" xlink:label="srt_EuropeMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfIntangibleAssetsTable" xlink:label="rgen_ScheduleOfIntangibleAssetsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeSeveranceMember" xlink:label="us-gaap_EmployeeSeveranceMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="us-gaap_LongTermDebtTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1" xlink:label="us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryWriteOffMember" xlink:label="rgen_InventoryWriteOffMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentOfExciseTaxOnNetStockRepurchases" xlink:label="rgen_PercentOfExciseTaxOnNetStockRepurchases"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss" xlink:label="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="us-gaap_PaymentsToAcquireSoftware"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsMember" xlink:label="us-gaap_CashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionsToPurchaseCommonStockMember" xlink:label="rgen_OptionsToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" xlink:label="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AmortizationOfDebtIssuanceCost" xlink:label="rgen_AmortizationOfDebtIssuanceCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Land" xlink:label="us-gaap_Land"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost" xlink:label="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentForAmortization" xlink:label="us-gaap_AdjustmentForAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAcquiredFromAcquisition" xlink:label="us-gaap_CashAcquiredFromAcquisition"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringReserveSettledWithoutCash2" xlink:label="us-gaap_RestructuringReserveSettledWithoutCash2"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="us-gaap_DerivativeContractTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="us-gaap_OtherIntangibleAssetsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="us-gaap_RisksAndUncertaintiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:label="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PerformanceBasedRestrictedStockUnitsMember" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateDomain" xlink:label="us-gaap_AwardDateDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FlexbiosysIncMember" xlink:label="rgen_FlexbiosysIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNet" xlink:label="us-gaap_InvestmentIncomeNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FacilityExitAndOtherExitCostsMember" xlink:label="rgen_FacilityExitAndOtherExitCostsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ExecutiveOfficerMember" xlink:label="srt_ExecutiveOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" xlink:label="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IndefiniteLivedIntangibleAssetsNet" xlink:label="rgen_IndefiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ChiefCommercialOfficerMember" xlink:label="rgen_ChiefCommercialOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" xlink:label="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ApacOtherMember" xlink:label="rgen_ApacOtherMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" xlink:label="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PfizerMember" xlink:label="rgen_PfizerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ProbabilityOfSuccess" xlink:label="rgen_ProbabilityOfSuccess"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByBalanceSheetGroupingTable" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtFairValue" xlink:label="us-gaap_LongTermDebtFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringReserve" xlink:label="us-gaap_RestructuringReserve"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyMember" xlink:label="us-gaap_RoyaltyMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DilutiveSecuritiesAbstract" xlink:label="us-gaap_DilutiveSecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="us-gaap_MeasurementInputTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenue" xlink:label="us-gaap_DeferredRevenue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueDomain" xlink:label="us-gaap_ValuationTechniqueDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" xlink:label="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TrademarkMember" xlink:label="rgen_TrademarkMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember" xlink:label="us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseAndRentalExpense" xlink:label="us-gaap_LeaseAndRentalExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="us-gaap_DebtInstrumentInterestRateTerms"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TwoThousandAndTwentyFourMember" xlink:label="rgen_TwoThousandAndTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_UnvestedOptionsMember" xlink:label="rgen_UnvestedOptionsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ManufacturingLineExpansionsMember" xlink:label="rgen_ManufacturingLineExpansionsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRent" xlink:label="us-gaap_PaymentsForRent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NumberOfSharesBasicOutstanding" xlink:label="rgen_NumberOfSharesBasicOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ProbabilityWeightedPresentValueMember" xlink:label="rgen_ProbabilityWeightedPresentValueMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfRelatedPartyTable" xlink:label="rgen_ScheduleOfRelatedPartyTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="us-gaap_MeasurementInputTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" xlink:label="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:label="rgen_ScheduleOfAccruedLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:label="rgen_BusinessCombinationConsiderationIndemnificationEscrow"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonEmployeeDirectorStockOptionMember" xlink:label="rgen_NonEmployeeDirectorStockOptionMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CommitmentsAndContingenciesTable" xlink:label="rgen_CommitmentsAndContingenciesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesAmortizedCostBasis" xlink:label="rgen_AvailableForSaleSecuritiesAmortizedCostBasis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AcceleratedDepreciationMember" xlink:label="rgen_AcceleratedDepreciationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtInstrumentConvertibleIntoEquity" xlink:label="rgen_DebtInstrumentConvertibleIntoEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssued1" xlink:label="us-gaap_StockIssued1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract" xlink:label="us-gaap_TextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NGLImpactAMember" xlink:label="rgen_NGLImpactAMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideIncMember" xlink:label="rgen_AvitideIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_IncomeTaxesTable" xlink:label="rgen_IncomeTaxesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryLineItems" xlink:label="us-gaap_InventoryLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrincipalOwnerMember" xlink:label="us-gaap_PrincipalOwnerMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InflationReductionActOfTwoThousandTwentyTwoMember" xlink:label="rgen_InflationReductionActOfTwoThousandTwentyTwoMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleNotesPayableCurrent" xlink:label="us-gaap_ConvertibleNotesPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdTradingDays" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdTradingDays"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BioflexMember" xlink:label="rgen_BioflexMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashInterestIncome" xlink:label="rgen_NoncashInterestIncome"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfAccruedLiabilitiesTable" xlink:label="rgen_ScheduleOfAccruedLiabilitiesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FacilityAndOtherExitCostsMember" xlink:label="rgen_FacilityAndOtherExitCostsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputRevenueVolumeDiscountRateMember" xlink:label="rgen_MeasurementInputRevenueVolumeDiscountRateMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MeasurementInputProbabilityOfSuccessMember" xlink:label="rgen_MeasurementInputProbabilityOfSuccessMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DilutiveEffectOnSharesOfConversionPremium" xlink:label="rgen_DilutiveEffectOnSharesOfConversionPremium"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="us-gaap_ConvertibleDebtTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RoyaltyExpense" xlink:label="us-gaap_RoyaltyExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfConvertiableNoteInterestExpense" xlink:label="rgen_ScheduleOfConvertiableNoteInterestExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" xlink:label="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TrueUpCostsDecember2020Member" xlink:label="rgen_TrueUpCostsDecember2020Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfessionalFees" xlink:label="us-gaap_ProfessionalFees"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_InventoryAdjustmentsMember" xlink:label="rgen_InventoryAdjustmentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest" xlink:label="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SpectrumIncMember" xlink:label="rgen_SpectrumIncMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="us-gaap_ProceedsFromConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewDateOfAnnualGoodwillImpairmentTest" xlink:label="us-gaap_NewDateOfAnnualGoodwillImpairmentTest"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:label="us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MilliporeSigmaMember" xlink:label="rgen_MilliporeSigmaMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_WeightedAverageDiscountRate" xlink:label="rgen_WeightedAverageDiscountRate"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses" xlink:label="us-gaap_CostsAndExpenses"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalOther" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_LongTermContingentConsideration" xlink:label="rgen_LongTermContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract" xlink:label="us-gaap_RevenuesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="us-gaap_TrademarksAndTradeNamesMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PuroliteMember" xlink:label="rgen_PuroliteMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:label="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashAndMoneyMarketFundsMember" xlink:label="rgen_CashAndMoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MeasurementInputPriceVolatilityMember" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MonteCarloSimulationMember" xlink:label="rgen_MonteCarloSimulationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentArrangementMember" xlink:label="us-gaap_ResearchAndDevelopmentArrangementMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideLlcMember" xlink:label="rgen_AvitideLlcMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_PercentageOfCurrentFederalTaxExpenseBenefit" xlink:label="rgen_PercentageOfCurrentFederalTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvitideAndFlexbiosysMember" xlink:label="rgen_AvitideAndFlexbiosysMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesEstimatedFairValue" xlink:label="rgen_AvailableForSaleSecuritiesEstimatedFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ChiefFinancialOfficerMember" xlink:label="srt_ChiefFinancialOfficerMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_MetenovaAbMember" xlink:label="rgen_MetenovaAbMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_OtherNonoperatingIncomeExpenseAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockholdersEquityNoteDisclosureTable" xlink:label="rgen_StockholdersEquityNoteDisclosureTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksMember" xlink:label="us-gaap_TrademarksMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="us-gaap_AmortizationOfFinancingCosts"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ShortTermContingentConsideration" xlink:label="rgen_ShortTermContingentConsideration"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTable" xlink:label="us-gaap_ConcentrationRiskTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpenseDebt" xlink:label="us-gaap_InterestExpenseDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:label="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="us-gaap_ScheduleOfProductInformationTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringCosts" xlink:label="us-gaap_RestructuringCosts"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_EarnoutConsiderationEarned" xlink:label="rgen_EarnoutConsiderationEarned"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" xlink:label="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" xlink:label="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate202006Member" xlink:label="us-gaap_AccountingStandardsUpdate202006Member"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:label="rgen_ReconciliationOfBasicAndDilutedSharesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryCurrentTable" xlink:label="us-gaap_InventoryCurrentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NoncashinventorywriteOff" xlink:label="rgen_NoncashinventorywriteOff"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" xlink:label="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_StockholdersEquityNoteDisclosureLineItems" xlink:label="rgen_StockholdersEquityNoteDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="us-gaap_RepaymentsOfConvertibleDebt"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardDateAxis" xlink:label="us-gaap_AwardDateAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_ContingentConsiderationMember" xlink:label="rgen_ContingentConsiderationMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_LossOnDebtConversion" xlink:label="rgen_LossOnDebtConversion"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="us-gaap_WeightedAverageNumberOfSharesRestrictedStock"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" xlink:label="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpenseDebtExcludingAmortization" xlink:label="us-gaap_InterestExpenseDebtExcludingAmortization"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationTechniqueAxis" xlink:label="us-gaap_ValuationTechniqueAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_CommitmentsAndContingenciesLineItems" xlink:label="rgen_CommitmentsAndContingenciesLineItems"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpensesAbstract" xlink:label="us-gaap_CostsAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RevenueAndVolumeDiscountRate" xlink:label="rgen_RevenueAndVolumeDiscountRate"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_RevenueAndVolumeBasedPaymentsMember" xlink:label="rgen_RevenueAndVolumeBasedPaymentsMember"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:label="rgen_OptionToPurchaseAdditionalDebtFaceAmount"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="us-gaap_DeferredRevenueCurrent"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NorthAmericaMember" xlink:label="srt_NorthAmericaMember"/>
    <link:loc xlink:type="locator" xlink:href="rgen-20230930.xsd#rgen_NonExecutiveMember" xlink:label="rgen_NonExecutiveMember"/>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_VolatilityRateOfContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Volatility rate of contingent consideration.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_VolatilityRateOfContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Volatility rate of Contingent Consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_VolatilityRateOfContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Volatility</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="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="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Money Market Funds [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Money Market</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest on Convertible Debt, Net of Tax</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Charges associated with convertible debt instruments, net of tax</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestOnConvertibleDebtNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Interest charges associated with convertible debt instruments</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAmortisedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt securities held to maturity amortised cost.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAmortisedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities Held to Maturity Amortised Cost</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAmortisedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities, Amortized Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCostAndReserveLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentOther_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Other, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentOther_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Other</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StatementGeographicalAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Geographical [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StatementGeographicalAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Geographical [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout</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">Incentive options, 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/verboseLabel">Restricted stock units and options, 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/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_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 noncurrent liabilities</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/totalLabel">Other Liabilities, Noncurrent, Total</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/2003/role/totalLabel">Increase (Decrease) in Prepaid Expense and Other Assets, Total</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_RestrictedStockUnitsRSUMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Restricted Stock Unit</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">RestrictedStockUnitsRSUMember</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2024</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="rgen_IntangibleAssetsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Intangible Assets [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IntangibleAssetsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intangible Assets [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IntangibleAssetsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible Assets [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Schedule of Intangible Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table 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/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 Measurements</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CustomerNumberOneMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Customer number one member.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CustomerNumberOneMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer Number One [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CustomerNumberOneMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer Number One [Member]</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">Total unrecognized compensation cost</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_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_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Payments to Acquire Businesses, Net of Cash Acquired, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Acquisitions, net of cash acquired</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 [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RDAndCommercializationBasedPaymentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">R&amp;D and Commercialization-based payments.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RDAndCommercializationBasedPaymentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">R&amp;D and Commercialization-based Payments [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RDAndCommercializationBasedPaymentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">R&amp;D and Commercialization-based Payments</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputEarnoutDiscountRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Measurement Input Earnout Discount Rate.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputEarnoutDiscountRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Input Earnout Discount Rate [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputEarnoutDiscountRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Earnout Discount Rate</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="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">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Title of Individual [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Relationship to Entity [Domain]</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/verboseLabel">Subsequent Event</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_DisclosureTextBlockAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disclosure Text Block [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill, Acquired During Period</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAcquiredDuringPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Acquisition of FlexBiosys, Inc</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncomeTaxesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Income Taxes [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncomeTaxesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Taxes [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncomeTaxesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Taxes [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockOptionAndIncentivePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Stock Option and Incentive Plan [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockOptionAndIncentivePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Option And Incentive Plan [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockOptionAndIncentivePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2018 Plan</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis</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/verboseLabel">Noncurrent operating lease liability</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_EuropeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Europe [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_EuropeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Europe</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfIntangibleAssetsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of Intangible Assets [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfIntangibleAssetsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Intangible Assets [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfIntangibleAssetsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Intangible Assets [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options Outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Balance as of September 30 , 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Liabilities, Fair Value Disclosure, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Fair Value Disclosure</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Liabilities, fair value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Balance as of December 31, 2020</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_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_EmployeeSeveranceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Severance &amp; employee-related costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeSeveranceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Employee Severance [Member]</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">Schedule of 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_RelatedPartyTransactionsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party Transactions [Abstract]</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_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 [Domain]</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' equity</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="us-gaap_LongTermDebtTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Convertible Senior Notes</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="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Income Tax Assets, 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/verboseLabel">Deferred tax assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Balances from contracts with customers only:</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Options outstanding at September 30, 2023 | shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Options outstanding at December 31, 2022 | shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock options, outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted average grant date fair value of share-based awards granted</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/verboseLabel">Business combination date of acquistion</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</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="rgen_InventoryWriteOffMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory Write-Off</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InventoryWriteOffMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory Write-Off [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InventoryWriteOffMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Inventory write-off.</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, 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/totalLabel">Common Stock, Shares, Issued, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentOfExciseTaxOnNetStockRepurchases_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Percent of excise tax on net stock repurchases.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentOfExciseTaxOnNetStockRepurchases_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Percent Of Excise Tax On Net Stock Repurchases</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentOfExciseTaxOnNetStockRepurchases_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Percent of excise tax on net stock repurchases</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Equity award, grant date fair value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity award, grant date fair value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Receivable, after Allowance for Credit Loss</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss_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_ContractWithCustomerReceivableAfterAllowanceForCreditLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Contract with Customer, Receivable, after Allowance for Credit Loss, Total</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 current assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Weighted average number of shares dilutive effect of unvested performance stock units.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Dilutive Effect of Unvested Performance Stock Units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dilutive effect of unvested performance stock units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireSoftware_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Software</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireSoftware_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Additions to capitalized software costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsMember_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_CashAndCashEquivalentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents [Member]</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="rgen_OptionsToPurchaseCommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options to Purchase Common Stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_OptionsToPurchaseCommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Options to Purchase Common Stock [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_OptionsToPurchaseCommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Options to purchase common stock.</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">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt securities held to maturity gross unrealized gain.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities Held to Maturity Gross Unrealized Gain</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities, Gross Unrealized Gains</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares, Outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending Balance (in shares)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning Balance (in shares)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Capital Shares Reserved for Future Issuance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Common stock shares reserved for Issuance</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_BusinessCombinationDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Disclosure [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Acquisition of FlexBiosys, Inc.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AmortizationOfDebtIssuanceCost_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Amortization of debt issuance cost.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AmortizationOfDebtIssuanceCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization Of Debt Issuance Cost</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AmortizationOfDebtIssuanceCost_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Amortization of debt issuance costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Land_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Land</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Land_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Land</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="us-gaap_RelatedPartyTransactionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party Transaction [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Related Party Transaction [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Incremental Common Shares Attributable to Dilutive Effect of Conversion of Debt Securities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Convertible Senior Notes</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Property, Plant and Equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt securities maturity within one year amortized cost.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities Maturity Within One Year Amortized Cost</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="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_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 [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Forfeited/expired/cancelled</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory</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">Discount Rate</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Increase in fair value of contingent consideration earnouts</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Consideration Transferred, Liabilities Incurred</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business combination contingent consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Decrease in fair value of contingent consideration earnouts</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentForAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentForAmortization_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_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_CashAcquiredFromAcquisition_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Acquired from Acquisition</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserveSettledWithoutCash2_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Non-Cash Restructuring Items</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserveSettledWithoutCash2_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Noncash Restructuirng Items</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserveSettledWithoutCash2_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Reserve, Settled without Cash</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_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/2003/role/terseLabel">Accounts receivable, reserve for doubtful accounts</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</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="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/verboseLabel">Operating lease liability</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Total revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer, Including Assessed Tax</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Measurement Inputs and Valuation Techniques [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Maturity Date</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Notes, due date</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/terseLabel">Notes, carrying value</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">Long-term Debt, Total</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/verboseLabel">Total convertible senior notes</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_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/periodEndLabel">Property, Plant and Equipment, Net, Ending Balance</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/periodStartLabel">Property, Plant and Equipment, Net, Beginning Balance</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, 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/totalLabel">Total property, plant and equipment, net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillPurchaseAccountingAdjustments_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Measurement period adjustment - FlexBiosys</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">Measurement period adjustment - FlexBiosys</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, Purchase Accounting Adjustments</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfStockDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Stock [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Restructuring Charges, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Charges</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restructuring charges</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maturity of one year or less, Amortized Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vested and expected to vest at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</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="us-gaap_OtherIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Intangible Assets [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other intangibles</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_RisksAndUncertaintiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Risks and Uncertainties [Abstract]</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/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/terseLabel">Assets, fair value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Other Operating Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Other Operating Assets, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Consideration Transferred, Equity Interests Issued and Issuable</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Value of common stock issued</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Preferred Stock, Shares Outstanding, Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Preferred Stock, Shares Outstanding, Beginning Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Settlements</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Acquisition date fair value of contingent consideration earnout</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/verboseLabel">Changes in Carrying Value of Goodwill</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">DilutivesharesAbstract</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dilutive shares, Effect on Basic Earnings Per Share [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effect of dilutive shares</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="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="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="rgen_PerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance Based Restricted Stock Units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Based Restricted Stock Units[ Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Performance based restricted stock units.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Finished Goods, Net of Reserves</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finished products</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, excluding impact of acquisitions:</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capitalized Computer Software, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedComputerSoftwareGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Computer hardware and software</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted-Average Remaining Contractual Term (in years)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AwardDateDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Award Date [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FlexbiosysIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">FlexBiosys</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FlexbiosysIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">FlexBiosys, Inc. [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FlexbiosysIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">FlexBiosys, Inc.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FlexbiosysIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">FlexBiosys, Inc.</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_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total, Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities, Available-for-Sale, Maturity, Allocated and Single Maturity Date, Fair Value</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="srt_SegmentGeographicalDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Geographical [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_SegmentGeographicalDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Geographical [Domain]</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="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted Stock and Option to Purchase Common Stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Stock and Option to Purchase Common Stock [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Restricted stock and option to purchase common stock.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentIncomeNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Investment Income, Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentIncomeNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Investment income</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentIncomeNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Investment Income, Net, Total</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="rgen_FacilityExitAndOtherExitCostsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Facility exit and other exit costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FacilityExitAndOtherExitCostsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Facility Exit and Other Exit Costs [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FacilityExitAndOtherExitCostsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Facility exit and other exit costs.</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="us-gaap_DeferredFinanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Issuance Costs, Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredFinanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Debt Issuance Costs, Net, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredFinanceCostsNet_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel">Unamortized debt issuance costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ExecutiveOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Executive Officer [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ExecutiveOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Awards Granted to Executive Level Employees</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party, Type [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Related Party [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt securities held to maturity estimated fair value.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities Held to Maturity Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities, Estimated Fair Value</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/periodEndLabel">Retained Earnings (Accumulated Deficit), Ending Balance</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/periodStartLabel">Retained Earnings (Accumulated Deficit), Beginning Balance</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">Accumulated 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="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">The increase (decrease) during the reporting period in operating lease right of use asset.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase Decrease in Operating Lease Right Of Use Asset</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Operating lease right of use assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IndefiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Indefinite Lived Intangible Assets Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IndefiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite Lived Intangible Assets Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IndefiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net Carrying Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ChiefCommercialOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Chief Commercial Officer</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ChiefCommercialOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Chief Commercial Officer [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ChiefCommercialOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Chief commercial officer.</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="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt instrument convertible into equity not yet converted.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument Convertible Into Equity Not Yet Converted</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument convertible into equity not yet converted</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementClassOfStockAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Stock [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Raw Materials, Net of Reserves</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Raw materials</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Unvested at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Unvested at December 31, 2022</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Unvested at June 30, 2021</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted stock units, outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ApacOtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">APAC Other [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ApacOtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">APAC/Other</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="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Cash, Cash Equivalents and Marketable Securities Held to Maturity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents and Marketable Securities Held to Maturity [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Tabular disclosure of the components of cash, cash equivalents, and marketable securities held to maturity.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Investments Classified by Contractual Maturity Date [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Stock Options Exercised</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from exercise of stock options</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Significant Accounting Policies [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Significant Accounting Policies</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeaseholdImprovementsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Leasehold Improvements, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeaseholdImprovementsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Leasehold improvements</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Tranche One [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vest Over Three Year</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Indefinite Lived Intangible Assets Accumulated Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite Lived Intangible Assets Accumulated Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accumulated Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PfizerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Pfizer member.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PfizerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Pfizer [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PfizerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Pfizer</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Income Taxes, Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income taxes payable</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 [Domain]</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="rgen_ProbabilityOfSuccess_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Probability of success.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ProbabilityOfSuccess_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Probability of Success</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ProbabilityOfSuccess_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Probability of success</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_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/2009/role/negatedLabel">Cumulative translation adjustment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted-Average Exercise Price Per Share</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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Tax withholding on vesting of restricted stock units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Tax withholding on vesting of restricted stock units</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="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, shares authorized</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Research and Development Expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Research and development</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Research and Development Expense, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair value of convertible senior notes</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Fair value of the note</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="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Issuance of Common Stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from issuance of common stock, net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Conversion of Units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Issuance of common stock for debt conversion</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization of Intangible Assets</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">Incentive options, vesting period</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, $0.01 par value; 80,000,000 shares authorized; 55,774,706 shares at September 30, 2023 and 55,557,698 shares at December 31, 2022 issued and outstanding</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/periodEndLabel">Common Stock, Value, Issued, Ending Balance</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/periodStartLabel">Common Stock, Value, Issued, Beginning Balance</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/totalLabel">Common Stock, Value, Issued, Total</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_OtherNoncashIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restructuring Liability</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Reserve</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Restructuring Reserve, Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Restructuring Reserve, Beginning Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Restructuring Reserve, Total</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/terseLabel">Accrued liabilities</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 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">Cash and cash equivalents</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="us-gaap_ShareBasedCompensation_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_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/totalLabel">Share-based Payment Arrangement, Noncash Expense, Total</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">Income from operations</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Equity Interest Issued or Issuable, Number of Shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Shares issued for business acquisition</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Shares of common stock issued for acquisition</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_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Deferred income taxes, net</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">Income tax (benefit) provision</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/totalLabel">Income Tax Expense (Benefit), Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted-Average Remaining Contractual Term (in years)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Research and Development Expense [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Research and development</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Shares, Acquisitions</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Issuance of commons stock pursuant to the acquisition, (in shares)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payment for Contingent Consideration Liability, Financing Activities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payment of earnout consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRestructuring_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Amounts Paid</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRestructuring_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for Restructuring</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RoyaltyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Royalty [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RoyaltyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Royalty and other revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RoyaltyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Royalty and Other Income</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">Accounts receivable, percentage by customer</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/verboseLabel">Revenues, percentage by country</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-Lived Intangible Assets [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Indefinite-lived Intangible Assets [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payment, Tax Withholding, Share-Based Payment Arrangement</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payment of tax withholding obligation on vesting of restricted stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DilutiveSecuritiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effect of dilutive securities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DilutiveSecuritiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dilutive Securities, Effect on Basic Earnings Per Share [Abstract]</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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Award split, percentage</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Award split, percentage</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MeasurementInputTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Input Type [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Aggregate Intrinsic Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Income (Loss) Attributable to Parent, Diluted</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Numerator for diluted earnings per share - net income available to common stockholders after the effect of dilutive securities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net Income (Loss) Attributable to Parent, Diluted, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Operating Lease Liability</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_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_ConcentrationRiskLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Concentration Risk [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Finite-Lived Intangible Assets, Net, Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Finite-Lived Intangible Assets, Net, Beginning Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net Carrying Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_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_DeferredRevenue_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Deferred revenue (included in accrued liabilities and other noncurrent liabilities in the condensed consolidated balance sheets)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredRevenue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredRevenue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Revenue, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationTechniqueDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Valuation Approach and Technique [Domain]</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/verboseLabel">Revenue Recognition</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Granted | shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Indemnification Assets, Range of Outcomes, Value, High</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Face Amount</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Notes issued</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Principal amount</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 income (expenses)</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_BusinessCombinationContingentConsiderationLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Contingent Consideration, Liability, Noncurrent</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Noncurrent contingent consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Abstract]</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_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="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">Other comprehensive income (loss):</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule Of Earnings Per Share Basic And Diluted [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Earnings Per Share Basic And Diluted [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Earnings Per Share Basic And Diluted [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Operating lease liability, long-term</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_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 noncurrent assets</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/totalLabel">Other Assets, Noncurrent, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TrademarkMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Right acquired through registration of a trademark to gain or protect exclusive use of business name, symbol or other device or style.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TrademarkMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trademark [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TrademarkMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Trademark</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</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_USTreasuryBillSecuritiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">U.S. treasury bills</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_USTreasuryBillSecuritiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">US Treasury Bill Securities [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2026</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2023 (remaining three months)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vested and expected to vest at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Exercise Price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeaseAndRentalExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Leases, Rent Expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeaseAndRentalExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Rental expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateTerms_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate Terms</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateTerms_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest repayment terms</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' equity:</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_ImpairmentOfIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Impairment of Intangible Assets (Excluding Goodwill)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Impairment of intangible assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Impairment of Intangible Assets (Excluding Goodwill), Total</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">Technology - developed</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/verboseLabel">Developed technology</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Amount eligible for grant</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Eligible for grant</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested in Period, Fair Value</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">Cost of product revenue</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">Cost of Goods and Services Sold, Total</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">Earnings per share:</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Indefinite-lived Intangible Assets, Major Class Name [Domain]</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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2027</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Expected Amortization, Year Five</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TwoThousandAndTwentyFourMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2024</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TwoThousandAndTwentyFourMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Two Thousand and Twenty Four [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TwoThousandAndTwentyFourMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Two thousand and twenty four.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Shares, Conversion of Units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Issuance of common stock for debt conversion (in shares)</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="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/2009/role/negatedLabel">Accounts payable</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_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="rgen_UnvestedOptionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Unvested Options [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_UnvestedOptionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Unvested Options [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_UnvestedOptionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unvested Options</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate, Effective Percentage</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effective interest rate of the liability component</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ManufacturingLineExpansionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Manufacturing line expansions.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ManufacturingLineExpansionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Manufacturing Line Expansions [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ManufacturingLineExpansionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Manufacturing line expansions</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for Rent</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Rental expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NumberOfSharesBasicOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of shares basic outstanding.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NumberOfSharesBasicOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Shares Basic Outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NumberOfSharesBasicOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted average shares used in computing net income 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/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_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_CommitmentsAndContingencies_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and contingencies (Note 10)</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="rgen_ProbabilityWeightedPresentValueMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Probability-weighted present value.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ProbabilityWeightedPresentValueMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Probability-Weighted Present Value [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ProbabilityWeightedPresentValueMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Probability-weighted present value</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_BusinessCombinationAcquisitionRelatedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Acquisition Related Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business combination, acquisition related costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Zero Point Three Seven Five Percent Convertible Senior Notes Due Twenty Twenty Four [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">0.375% Convertible Senior Notes due 2024</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="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party, Type [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Related Party [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-Lived Intangible Assets (Excluding Goodwill)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Indefinite-lived Intangible Assets (Excluding Goodwill), Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Indefinite-lived Intangible Assets (Excluding Goodwill), Beginning Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Indefinite-lived Intangible Assets (Excluding Goodwill), Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Gross Carrying Value</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="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Receivables and Deferred Revenue from Contracts with Customers</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contingent consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Payment of contingent consideration earnout</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfRelatedPartyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule Of Related Party [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfRelatedPartyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Related Party [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfRelatedPartyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Related Party [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MeasurementInputTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Input Type [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringCostAndReserveAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring Type [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vested and expected to vest at September 30, 2023 (1) | shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number</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">Range [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Stock Issued During Period, shares,contingent consideration earnout payment.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Shares,Contingent Consideration Earnout Payment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Issuance of common stock pursuant to the Avitide, Inc.contingent consideration earnout payment</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">Total cash provided by operating activities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Vested</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Aggregate intrinsic value of restricted stock units vested</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="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">Range [Axis]</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="rgen_ScheduleOfAccruedLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of Accrued Liabilities [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfAccruedLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Accrued Liabilities [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfAccruedLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Accrued Liabilities [Line Items]</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 (Note 12)</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/totalLabel">Earnings Per Share, Diluted, Total</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="us-gaap_CostOfSalesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cost of Sales [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfSalesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cost of product revenue</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 [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingsAndImprovementsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Buildings and Improvements, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingsAndImprovementsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Buildings</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingsAndImprovementsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Buildings and Improvements, Gross, Total</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 [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/label">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options exercisable at September 30, 2023 | shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Other Noncurrent Liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_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="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_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/periodEndLabel">Additional Paid in Capital, Common Stock, Ending Balance</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/periodStartLabel">Additional Paid in Capital, Common Stock, Beginning Balance</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="rgen_BusinessCombinationConsiderationIndemnificationEscrow_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business Combination Consideration Indemnification Escrow</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationConsiderationIndemnificationEscrow_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Consideration Indemnification Escrow</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationConsiderationIndemnificationEscrow_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business acquisition, Indemnification escrow</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Net of Tax</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Accumulated Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Net of Tax, Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Translation adjustment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Translation adjustment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options Outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NonEmployeeDirectorStockOptionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Non Employee Director Stock Option[Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NonEmployeeDirectorStockOptionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Non Employee Director Stock Option[Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NonEmployeeDirectorStockOptionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-Employee Directors</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CommitmentsAndContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Commitments and Contingencies [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CommitmentsAndContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CommitmentsAndContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and Contingencies [Table]</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">Schedule of Restructuring and Related Costs [Table]</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 [Domain]</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/2009/role/negatedLabel">Exercised | shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maturity of one year or less, Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One</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="rgen_AvailableForSaleSecuritiesAmortizedCostBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities, Amortized Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesAmortizedCostBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Available for Sale Securities, Amortized Cost Basis</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesAmortizedCostBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Available for sale securities, amortized cost basis.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AcceleratedDepreciationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accelerated depreciation</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AcceleratedDepreciationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accelerated Depreciation [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AcceleratedDepreciationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accelerated depreciation.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Acquisitions</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">True up of costs related to the December 2020 issuance of common stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Issuance of commons stock pursuant to the acquisition</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_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="rgen_DebtInstrumentConvertibleIntoEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt instrument convertible into equity.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtInstrumentConvertibleIntoEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument Convertible Into Equity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtInstrumentConvertibleIntoEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument amount convertible into equity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsidiary, Ownership Percentage, Noncontrolling Owner</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non controlling ownership interest minimum</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssued1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssued1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair value of common stock issued for acquisition</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Convertible, Threshold Consecutive Trading Days</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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2025</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TextBlockAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Text Block [Abstract]</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_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_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Identified Intangible Assets and Estimated Useful Lives</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">Awarded</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Finite-Lived Intangible Liabilities [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite Lived Intangible Liabilities [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Liabilities [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FiniteLivedIntangibleLiabilitiesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Finite-Lived Intangible Liabilities [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Exercised</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="us-gaap_EarningsPerShareBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Basic [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Denominator</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NGLImpactAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">NGL Impact A[Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NGLImpactAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">NGL Impact A [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Avitide, Inc. [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Avitide, Inc. [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Avitide, Inc.</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="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Components [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accounts Receivable</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accounts receivable</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestructuringAndRelatedActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring and Related Activities [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncomeTaxesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Income Taxes [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncomeTaxesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Taxes [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_IncomeTaxesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Taxes [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory Disclosure [Abstract]</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 consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Summary Of Significant Accounting Policies [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary Of Significant Accounting Policies [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary Of Significant Accounting Policies [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted Average, Vested</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</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="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, Plant and Equipment [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsidiarySaleOfStockAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Sale of Stock [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options exercisable at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</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/periodEndLabel">Balance</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</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_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_IncomeTaxAuthorityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Authority [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Authority [Domain]</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_InventoryLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory [Line Items]</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 [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrincipalOwnerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Principal Owner [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrincipalOwnerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Principal Owner</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</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 and Cash Equivalents, Total</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 and cash equivalents</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Numerator</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Income (Loss) Available to Common Stockholders, Basic [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InflationReductionActOfTwoThousandTwentyTwoMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Inflation reduction act of two thousand twenty two member.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InflationReductionActOfTwoThousandTwentyTwoMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inflation Reduction Act Of Two Thousand Twenty Two [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Notes, interest rate</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Senior convertible notes</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unrecognized compensation cost, weighted average remaining requisite service period</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vested and expected to vest at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term</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_ConvertibleNotesPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Convertible Senior Notes, net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConvertibleNotesPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Convertible Notes Payable, Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConvertibleNotesPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total convertible senior notes</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_DebtInstrumentConvertibleThresholdTradingDays_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Convertible, Threshold Trading Days</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">Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Operating lease liability</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="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/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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_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_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="srt_OwnershipDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Ownership [Domain]</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 increase (decrease) in cash and cash equivalents</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Work in Process, Net of Reserves</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Work-in-process</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_AssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Noncurrent</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total noncurrent assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other investing activities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other investing activities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intangible Assets, Gross (Excluding Goodwill)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gross Carrying Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Intangible Assets, Gross (Excluding Goodwill), Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BioflexMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">BioFlex [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BioflexMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">BioFlex [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BioflexMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">BioFlex</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NoncashInterestIncome_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Non-cash interest income</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NoncashInterestIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Noncash interest income.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NoncashInterestIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Noncash Interest Income</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfAccruedLiabilitiesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of Accrued Liabilities [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfAccruedLiabilitiesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Accrued Liabilities [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfAccruedLiabilitiesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Accrued Liabilities [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Inventories</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 Reporting</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="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventories, net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total inventories, net</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_AcquiredFiniteLivedIntangibleAssetResidualValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Acquired Finite-Lived Intangible Asset, Residual Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible Asset Residual Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FacilityAndOtherExitCostsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Facility and Other Exit Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FacilityAndOtherExitCostsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Facility and Other Exit Costs [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FacilityAndOtherExitCostsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Facility and other exit costs.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_NameOfMajorCustomerDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_NameOfMajorCustomerDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Beginning Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Less - Accumulated depreciation</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Selling, General and Administrative Expenses [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Selling, general and administrative</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/totalLabel">Weighted Average Number of Shares Outstanding, Basic, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Activity Related to Restructuring Plan</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restructuring and Related Costs [Table Text Block]</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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Restricted Stock Unit Activity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputRevenueVolumeDiscountRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Measurement Input Revenue &amp; Volume Discount Rate.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputRevenueVolumeDiscountRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Input Revenue &amp; Volume Discount Rate [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputRevenueVolumeDiscountRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue &amp; Volume Discount Rate</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputProbabilityOfSuccessMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Measurement Input Probability of Success.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputProbabilityOfSuccessMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Input Probability of Success [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MeasurementInputProbabilityOfSuccessMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Probability of Success</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted Average, Vested and expected to vest at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Grant Date Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share based compensation arrangement by share based payment award equity instruments other than options vested and expected to vest outstanding weighted average grant date fair value.</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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Option Activity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts Receivable [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DilutiveEffectOnSharesOfConversionPremium_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Dilutive effect on shares of conversion premium.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DilutiveEffectOnSharesOfConversionPremium_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Dilutive Effect On Shares Of Conversion Premium</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DilutiveEffectOnSharesOfConversionPremium_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dilutive effect on shares of conversion premium</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="us-gaap_LiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Noncurrent</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total noncurrent liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Proceeds from Sale and Maturity of Held-to-Maturity Securities, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Sale and Maturity of Held-to-Maturity Securities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from maturity of marketable securities held to maturity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party Transactions Disclosure [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Related Party Transactions</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/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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Fair value of net assets acquired</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConvertibleDebtTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Convertible Debt [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConvertibleDebtTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Carrying Value of Convertible Senior Notes</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">Common stock excluded from calculation of diluted earnings per share</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating lease right of use asset</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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vested and expected to vest at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RoyaltyExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Royalty Expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RoyaltyExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Royalty payments</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">Accounts receivable, net of reserves of $1,803 and $1,365 at September 30, 2023 and December 31, 2022, respectively</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/totalLabel">Accounts Receivable, after Allowance for Credit Loss, Current, Total</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/verboseLabel">Accounts receivable, net of reserves</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MajorCustomersAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MajorCustomersAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash and cash equivalents, Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities Held to Maturity and Cash and Cash Equivalents Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt securities held to maturity and cash and cash equivalents estimated fair value.</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_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="rgen_ScheduleOfConvertiableNoteInterestExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of convertiable note interest expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfConvertiableNoteInterestExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of convertiable note interest expense</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="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Stock issued during period, value,contingent consideration earnout payment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value,Contingent Consideration Earnout Payment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Issuance of common stock pursuant to the acquisition of FlexBiosys, Inc.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConstructionInProgressGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Construction in Progress, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConstructionInProgressGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Construction in progress</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/periodEndLabel">Cash and Cash Equivalents, at Carrying Value, Ending Balance</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/periodStartLabel">Cash and Cash Equivalents, at Carrying Value, Beginning Balance</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_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">Stock-Based Compensation Expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options exercisable at September, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value</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="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_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/terseLabel">Property and equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TrueUpCostsDecember2020Member_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">True up costs December 2020.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TrueUpCostsDecember2020Member_lbl" xlink:role="http://www.xbrl.org/2003/role/label">True up costs December 2020 [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TrueUpCostsDecember2020Member_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">True Up Costs December 2020</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfessionalFees_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Professional Fees</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfessionalFees_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Spectrum Acquisition, tax preparation and other fees</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InventoryAdjustmentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory adjustments</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InventoryAdjustmentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory Adjustments [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_InventoryAdjustmentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Inventory adjustments.</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_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">Selling, general and administrative</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_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Purchase Commitment, Category of Item Purchased [Domain]</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 [Axis]</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="us-gaap_SaleOfStockNameOfTransactionDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Sale of Stock [Domain]</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/verboseLabel">Weighted Average, Awarded</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">Weighted average grant date fair value of restricted stock units granted</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PatentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Patents [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PatentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Patents</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="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reason for Change in Date of Annual Goodwill Impairment Test</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="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets Amortization Expense [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Schedule of Amortization Expense for Amortized Intangible Assets</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 Standards Updates</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</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/totalLabel">Preferred Stock, Shares Issued, Total</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</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_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SpectrumIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Spectrum Inc.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SpectrumIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Spectrum Inc [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SpectrumIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Spectrum Inc.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SpectrumIncMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Spectrum Inc.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Property, Plant and Equipment, Gross, Ending Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Property, Plant and Equipment, Gross, Beginning Balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total property, plant and equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Assets acquired under operating leases</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</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 [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LegalEntityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Legal Entity [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LegalEntityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Legal Entity [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted average common shares outstanding:</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">Emerging growth company</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromConvertibleDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Convertible Debt</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromConvertibleDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from issuance of convertible senior notes, net of costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Aggregate intrinsic value of stock options exercised</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Summary Of Significant Accounting Policies [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary Of Significant Accounting Policies [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SummaryOfSignificantAccountingPoliciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary Of Significant Accounting Policies [Table]</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="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/verboseLabel">Accrued Liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewDateOfAnnualGoodwillImpairmentTest_lbl" xlink:role="http://www.xbrl.org/2003/role/label">New Date of Annual Goodwill Impairment Test</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Weighted Average Number of Shares [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic and Diluted Weighted Average Shares Outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Purchase of intellectual property</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Purchase of intellectual property</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Intangible Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TypeOfAdoptionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TypeOfAdoptionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Type of Adoption [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Category of Item Purchased [Axis]</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">Restructuring Plan</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2028 and thereafter</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Expected Amortization, after Year Five</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MilliporeSigmaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Millipore Sigma.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MilliporeSigmaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Millipore Sigma [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MilliporeSigmaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">MilliporeSigma</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accrued liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Restructuring Activities by Type of Cost</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Restructuring Reserve by Type of Cost [Table Text Block]</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="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_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/periodEndLabel">Cash and cash equivalents, end of period</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 and restricted cash, beginning of period</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">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_WeightedAverageDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Weighted average discount rate.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_WeightedAverageDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Discount Rate</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_WeightedAverageDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted average discount rate</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net liabilities assumed</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="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 [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Weighted Average, Unvested at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Weighted Average, Unvested at December 31,2022</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostsAndExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Costs and Expenses</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostsAndExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total costs and operating expenses</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedules of Concentration of Risk, by Risk Factor [Table Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Percentage by Geographic Area or Significant Customers</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustments to Additional Paid in Capital, Other</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther_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_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/periodEndLabel">Preferred Stock, Value, Issued, Ending Balance</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/periodStartLabel">Preferred Stock, Value, Issued, Beginning Balance</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, $0.01 par value, 5,000,000 shares authorized, no shares issued or outstanding</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/totalLabel">Preferred Stock, Value, Issued, Total</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">Smaller reporting 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_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/verboseLabel">Number of operating segments</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_TitleOfIndividualAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Title of Individual [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_TitleOfIndividualAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Title of Individual [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Investment Type [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_LongTermContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Long-term contingent consideration.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_LongTermContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long Term Contingent Consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_LongTermContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term contingent consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Transaction Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transaction costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Tax withholding on vesting of restricted stock units (in shares)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Tax withholding on vesting of restricted stock units (in shares)</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="us-gaap_RevenuesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenues [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenuesAbstract_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Forfeited/expired/cancelled</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">Trademark and tradename</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PuroliteMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Purolite [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PuroliteMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Purolite member.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Goodwill And Other Intangible Assets Disclosure [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill And Other Intangible Assets Disclosure [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Goodwill and Other Intangible Assets</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="us-gaap_SalesRevenueNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue Benchmark [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Sales Revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Total Revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Revenue recognized during periods presented relating to:</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Change in Contract with Customer, Asset and Liability [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business combination, intangible assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Customer relationships</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashAndMoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash and money market funds</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashAndMoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Money Market Funds [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashAndMoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cash and money market funds.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Measurement Input, Price Volatility [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Volatility</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental Balance Sheet Disclosures [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Consolidated Balance Sheet Detail</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Percentage of shares subject to forfeiture.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Percentage of Shares Subject to Forfeiture</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentageOfSharesSubjectToForfeiture_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Estimated forfeiture rates</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gross Carrying Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Finite-Lived Intangible Assets, Gross, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MonteCarloSimulationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Monte Carlo Simulation.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MonteCarloSimulationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Monte Carlo Simulation [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MonteCarloSimulationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Monte Carlo Simulation</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Research and Development Arrangement [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Research and Development Arrangement [Member]</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 [Domain]</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">Income Statement Location [Axis]</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/terseLabel">Income Statement Location [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities held to maturity</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities, Held-to-Maturity, Amortized Cost, before Allowance for Credit Loss, Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideLlcMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Avitide LLC.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideLlcMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Avitide LLC [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideLlcMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Avitide LLC</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentageOfCurrentFederalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Percentage Of Current Federal Tax Expense Benefit</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentageOfCurrentFederalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Percentage Of Current Federal Tax Expense Benefit</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_PercentageOfCurrentFederalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Percentage of alternative minimum tax</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Purchase Commitment, Amount</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Payments to Navigo in connection with this program, which are recorded to research and development expenses</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideAndFlexbiosysMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Avitide and FlexBiosys.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideAndFlexbiosysMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Avitide and FlexBiosys [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvitideAndFlexbiosysMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Avitide and FlexBiosys</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Product Revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Products</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash and cash equivalents, Amortized Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities Held to Maturity and Cash and Cash Equivalents Amortized Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt securities held to maturity and cash and cash equivalents amortized costs.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Closing price of common stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Contingent Consideration, Liability, Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current contingent consideration</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/verboseLabel">Principal amount</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="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Purchase of treasury stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Value, Acquired, Cost Method</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="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accumulated Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Exercise of stock options and vesting of stock units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities, Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Available for Sale Securities Estimated Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesEstimatedFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Available for sale securities estimated fair value.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ChiefFinancialOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Chief Financial Officer</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ChiefFinancialOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Chief Financial Officer [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MetenovaAbMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Metenova AB</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MetenovaAbMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Metenova AB [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_MetenovaAbMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Metenova AB.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other long-term assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentTypeCategorizationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Investments [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpenseAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Nonoperating Income (Expense) [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpenseAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other income (expenses):</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Convertible, Threshold Percentage of Stock Price Trigger</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Notes threshold percentage of stock price trigger</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockholdersEquityNoteDisclosureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Stockholders Equity Note Disclosure [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockholdersEquityNoteDisclosureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders Equity Note Disclosure [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockholdersEquityNoteDisclosureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stockholders Equity Note Disclosure [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TrademarksMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trademarks [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TrademarksMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Trademarks</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TrademarksMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Trademarks</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_AmortizationOfFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Amortization of debt issuance costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amortization of debt issuance costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization of Debt Issuance Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Amortization of debt issuance costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShortTermContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Short-term contingent consideration.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShortTermContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Short Term Contingent Consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ShortTermContingentConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Short-term contingent consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Diluted, Adjustment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Dilutive potential common shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTable_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Concentration Risk [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/label">Subsequent Event [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Inventories</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Inventories, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Inventories</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Liability</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">The beginning deferred revenue balance</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Contract with Customer, Liability, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Expense, Debt</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseDebt_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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options exercisable at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</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/periodEndLabel">Common Stock, Shares, Outstanding, Ending 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/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/terseLabel">Common stock, shares outstanding</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of unvested options and restricted stock units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted Average, Forfeited/Cancelled</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfProductInformationTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Product Information [Table]</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">Restructuring Costs</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_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_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total, Amortized Costs</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities, Available-for-Sale, Maturity, Allocated and Single Maturity Date, Amortized Cost</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental Cash Flow Elements [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Supplemental disclosure of non-cash investing and financing activities:</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_EarnoutConsiderationEarned_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Earnout consideration earned.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_EarnoutConsiderationEarned_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnout Consideration Earned</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_EarnoutConsiderationEarned_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Earnout consideration earned</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Fair value of contingent consideration earnouts related to acquisition.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value of Contingent Consideration Earnouts Related to Acquisition</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair value of contingent consideration earnouts related to acquisition</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 [Domain]</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">Income Statement Location [Domain]</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/terseLabel">Income Statement Location [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Granted</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination and Asset Acquisition [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash equivalents and marketable securities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash And Cash Equivalents And Money Market Funds [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cash and cash equivalents And money market funds.</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="us-gaap_AccountingStandardsUpdate202006Member_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update 2020-06 [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingStandardsUpdate202006Member_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">AccountingStandardsUpdate202006Member</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_OwnershipAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Ownership [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ReconciliationOfBasicAndDilutedSharesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reconciliation of Basic and Diluted Shares [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryCurrentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Current [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryCurrentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory, Current [Table]</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">Total cash provided by (used in) investing activities</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="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill and Intangible Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule Of Earnings Per Share Basic And Diluted [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Earnings Per Share Basic And Diluted [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Earnings Per Share Basic And Diluted [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Forfeited/expired/cancelled</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">Total cash 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/label">Net Cash Provided by (Used in) Financing Activities</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="rgen_RestrictedStockAndPerformanceStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Restricted stock units and performance stock units.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Stock And Performance Stock Units [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RestrictedStockAndPerformanceStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted Stock Units and Performance Stock Units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Accrued Liabilities, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Accrued expenses</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Foreign currency translation adjustment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GeographicConcentrationRiskMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Geographic Concentration Risk [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GeographicConcentrationRiskMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Geographic Concentration Risk</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TradeNamesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trade Names [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TradeNamesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Trademark and tradename</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Nonoperating Income (Expense)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other income (expenses), net</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NoncompeteAgreementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Noncompete Agreements [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NoncompeteAgreementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-compete agreements</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_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, Plant and Equipment [Table]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Machinery and Equipment, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Machinery and Equipment, Gross, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Useful Life</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted Average Useful Life (in years)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Expected useful life</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NoncashinventorywriteOff_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-cash inventory write-off</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NoncashinventorywriteOff_lbl" xlink:role="http://www.xbrl.org/2003/role/label">NoncashInventoryWrite-off</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NoncashinventorywriteOff_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">NoncashInventoryWrite-off.</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' equity</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">Weighted Average Useful Life (in years)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Total trade accounts receivable royalties and other receivables.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Total Trade Accounts Receivable Royalties And Other Receivables [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total Trade Accounts Receivable Royalties And Other Receivables</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockholdersEquityNoteDisclosureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Stockholders Equity Note Disclosure [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockholdersEquityNoteDisclosureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders Equity Note Disclosure [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_StockholdersEquityNoteDisclosureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stockholders Equity Note Disclosure [Line Items]</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">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_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net Carrying Value</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_InterestExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Interest Expense, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpense_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Interest expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfConvertibleDebt_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repayment of Convertible Senior Notes</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfConvertibleDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Repayments of Convertible Debt</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfConvertibleDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Repayment of convertible debt</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfConvertibleDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Repayment of convertible debt</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AwardDateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Award Date [Axis]</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_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Basis of Presentation and Significant Accounting Policies [Text Block]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_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_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Exercise of stock options and vesting of stock units (in shares)</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture, Total</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 (Note 12)</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">Denominator for diluted earnings per share - adjusted weighted average shares used in computing net income per share - 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/label">Weighted Average Number of Shares Outstanding, Diluted</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">Income tax (benefit) provision</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/verboseLabel">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/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/totalLabel">Effective Income Tax Rate Reconciliation, Percent, Total</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net asset acquired</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ContingentConsiderationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contingent consideration.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ContingentConsiderationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contingent Consideration [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_ContingentConsiderationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contingent Consideration</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_LossOnDebtConversion_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Loss on debt conversion.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_LossOnDebtConversion_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss On Debt Conversion</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_LossOnDebtConversion_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss on conversion of debt included in other expenses</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Options outstanding at September 30, 2023</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Options outstanding at December 31, 2022</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock options, weighted average exercise price</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesRestrictedStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares, Restricted Stock</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesRestrictedStock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Options and stock units</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marketable securities, Gross Unrealized Gains</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Available for Sale Securities, Accumulated Gross Unrealized Gain</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Available for sale securities, accumulated gross unrealized gain.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseDebtExcludingAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Expense, Debt, Excluding Amortization</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestExpenseDebtExcludingAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contractual interest expense</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationTechniqueAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Valuation Approach and Technique [Axis]</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/verboseLabel">Disaggregation of Revenue [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Authority [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Authority [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CommitmentsAndContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Commitments and Contingencies [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CommitmentsAndContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies [Line Items]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_CommitmentsAndContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and Contingencies [Line Items]</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_CostsAndExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Costs and Expenses [Abstract]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostsAndExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Costs and operating expenses:</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RevenueAndVolumeDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revenue and volume discount rate.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RevenueAndVolumeDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue and Volume Discount Rate</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RevenueAndVolumeDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue and volume discount rate</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RevenueAndVolumeBasedPaymentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revenue and volume based payments.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RevenueAndVolumeBasedPaymentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue and Volume Based Payments [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_RevenueAndVolumeBasedPaymentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue and Volume Based Payments</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Furniture and Fixtures, Gross</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Furniture, fixtures and office equipment</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_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_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Payments to Acquire Property, Plant, and Equipment, Total</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Purchases of property, plant and equipment</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TypeOfRestructuringDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Type of Restructuring [Domain]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_OptionToPurchaseAdditionalDebtFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Option to purchase additional debt face amount.</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_OptionToPurchaseAdditionalDebtFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Option to Purchase Additional Debt Face Amount</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_OptionToPurchaseAdditionalDebtFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Additional Notes issued</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax and Other Liabilities, Noncurrent</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred tax liabilities</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Vested</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">Employee compensation</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_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 [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredRevenueCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Revenue, Current</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredRevenueCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred revenue</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredRevenueCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Revenue, Current, Total</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_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 [Axis]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_NorthAmericaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">North America [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_NorthAmericaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">North America</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NonExecutiveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Non-Executive [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NonExecutiveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Non-Executive [Member]</link:label>
    <link:label xml:lang="en-US" xlink:type="resource" xlink:label="rgen_NonExecutiveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Awards Granted to Non-Executive Level Employees</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_VolatilityRateOfContingentConsideration" xlink:to="rgen_VolatilityRateOfContingentConsideration_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="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MoneyMarketFundsMember" xlink:to="us-gaap_MoneyMarketFundsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestOnConvertibleDebtNetOfTax" xlink:to="us-gaap_InterestOnConvertibleDebtNetOfTax_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DebtSecuritiesHeldToMaturityAmortisedCost" xlink:to="rgen_DebtSecuritiesHeldToMaturityAmortisedCost_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCostAndReserveLineItems" xlink:to="us-gaap_RestructuringCostAndReserveLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentOther" xlink:to="us-gaap_PropertyPlantAndEquipmentOther_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_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_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_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_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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_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="rgen_IntangibleAssetsLineItems" xlink:to="rgen_IntangibleAssetsLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:to="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_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="rgen_CustomerNumberOneMember" xlink:to="rgen_CustomerNumberOneMember_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_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_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_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="rgen_RDAndCommercializationBasedPaymentsMember" xlink:to="rgen_RDAndCommercializationBasedPaymentsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_MeasurementInputEarnoutDiscountRateMember" xlink:to="rgen_MeasurementInputEarnoutDiscountRateMember_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="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="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_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_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureTextBlockAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="us-gaap_GoodwillAcquiredDuringPeriod_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_IncomeTaxesLineItems" xlink:to="rgen_IncomeTaxesLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_StockOptionAndIncentivePlanMember" xlink:to="rgen_StockOptionAndIncentivePlanMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:to="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_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="srt_EuropeMember" xlink:to="srt_EuropeMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ScheduleOfIntangibleAssetsTable" xlink:to="rgen_ScheduleOfIntangibleAssetsTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesFairValueDisclosure" xlink:to="us-gaap_LiabilitiesFairValueDisclosure_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeSeveranceMember" xlink:to="us-gaap_EmployeeSeveranceMember_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_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsAbstract_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_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_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_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_LongTermDebtTextBlock" xlink:to="us-gaap_LongTermDebtTextBlock_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="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_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_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_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="rgen_InventoryWriteOffMember" xlink:to="rgen_InventoryWriteOffMember_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="rgen_PercentOfExciseTaxOnNetStockRepurchases" xlink:to="rgen_PercentOfExciseTaxOnNetStockRepurchases_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss" xlink:to="us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss_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="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits" xlink:to="rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireSoftware" xlink:to="us-gaap_PaymentsToAcquireSoftware_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsMember" xlink:to="us-gaap_CashAndCashEquivalentsMember_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="rgen_OptionsToPurchaseCommonStockMember" xlink:to="rgen_OptionsToPurchaseCommonStockMember_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="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain" xlink:to="rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_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_BusinessCombinationDisclosureTextBlock" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AmortizationOfDebtIssuanceCost" xlink:to="rgen_AmortizationOfDebtIssuanceCost_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Land" xlink:to="us-gaap_Land_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_RelatedPartyTransactionLineItems" xlink:to="us-gaap_RelatedPartyTransactionLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost" xlink:to="rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost_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="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentForAmortization" xlink:to="us-gaap_AdjustmentForAmortization_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_CashAcquiredFromAcquisition" xlink:to="us-gaap_CashAcquiredFromAcquisition_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringReserveSettledWithoutCash2" xlink:to="us-gaap_RestructuringReserveSettledWithoutCash2_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_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_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_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_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_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDate" xlink:to="us-gaap_DebtInstrumentMaturityDate_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_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_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_GoodwillPurchaseAccountingAdjustments" xlink:to="us-gaap_GoodwillPurchaseAccountingAdjustments_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_ClassOfStockDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCharges" xlink:to="us-gaap_RestructuringCharges_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_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_OtherIntangibleAssetsMember" xlink:to="us-gaap_OtherIntangibleAssetsMember_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_RisksAndUncertaintiesAbstract" xlink:to="us-gaap_RisksAndUncertaintiesAbstract_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_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:to="us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_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="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract" xlink:to="rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract_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="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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_PerformanceBasedRestrictedStockUnitsMember" xlink:to="rgen_PerformanceBasedRestrictedStockUnitsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves_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_CapitalizedComputerSoftwareGross" xlink:to="us-gaap_CapitalizedComputerSoftwareGross_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardDateDomain" xlink:to="us-gaap_AwardDateDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_FlexbiosysIncMember" xlink:to="rgen_FlexbiosysIncMember_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_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate_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="srt_SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain_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="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember" xlink:to="rgen_RestrictedStockAndOptionToPurchaseCommonStockMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeNet" xlink:to="us-gaap_InvestmentIncomeNet_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="rgen_FacilityExitAndOtherExitCostsMember" xlink:to="rgen_FacilityExitAndOtherExitCostsMember_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="us-gaap_DeferredFinanceCostsNet" xlink:to="us-gaap_DeferredFinanceCostsNet_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ExecutiveOfficerMember" xlink:to="srt_ExecutiveOfficerMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_RelatedPartyDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue" xlink:to="rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue_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="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:to="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_IndefiniteLivedIntangibleAssetsNet" xlink:to="rgen_IndefiniteLivedIntangibleAssetsNet_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ChiefCommercialOfficerMember" xlink:to="rgen_ChiefCommercialOfficerMember_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="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted" xlink:to="rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ApacOtherMember" xlink:to="rgen_ApacOtherMember_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="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock" xlink:to="rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsGross" xlink:to="us-gaap_LeaseholdImprovementsGross_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheOneMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_PfizerMember" xlink:to="rgen_PfizerMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedIncomeTaxesCurrent" xlink:to="us-gaap_AccruedIncomeTaxesCurrent_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="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="rgen_ProbabilityOfSuccess" xlink:to="rgen_ProbabilityOfSuccess_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_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_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="us-gaap_FairValueByBalanceSheetGroupingTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_CashAndCashEquivalentsLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtFairValue" xlink:to="us-gaap_LongTermDebtFairValue_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="us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:to="us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_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="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_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_RestructuringReserve" xlink:to="us-gaap_RestructuringReserve_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_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="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_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued" xlink:to="us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="us-gaap_ResearchAndDevelopmentExpenseMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:to="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRestructuring" xlink:to="us-gaap_PaymentsForRestructuring_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RoyaltyMember" xlink:to="us-gaap_RoyaltyMember_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_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DilutiveSecuritiesAbstract" xlink:to="us-gaap_DilutiveSecuritiesAbstract_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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputTypeDomain" xlink:to="us-gaap_MeasurementInputTypeDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:to="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredRevenue" xlink:to="us-gaap_DeferredRevenue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationTechniqueDomain" xlink:to="us-gaap_ValuationTechniqueDomain_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh" xlink:to="us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFaceAmount" xlink:to="us-gaap_DebtInstrumentFaceAmount_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_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract_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_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_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="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:to="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_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_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_TrademarkMember" xlink:to="rgen_TrademarkMember_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_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_USTreasuryBillSecuritiesMember" xlink:to="us-gaap_USTreasuryBillSecuritiesMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseAndRentalExpense" xlink:to="us-gaap_LeaseAndRentalExpense_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateTerms" xlink:to="us-gaap_DebtInstrumentInterestRateTerms_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_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_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:to="us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_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="dei_EntityDomain" xlink:to="dei_EntityDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_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_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_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_TwoThousandAndTwentyFourMember" xlink:to="rgen_TwoThousandAndTwentyFourMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:to="us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_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="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_UnvestedOptionsMember" xlink:to="rgen_UnvestedOptionsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:to="us-gaap_DebtInstrumentInterestRateEffectivePercentage_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ManufacturingLineExpansionsMember" xlink:to="rgen_ManufacturingLineExpansionsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRent" xlink:to="us-gaap_PaymentsForRent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_NumberOfSharesBasicOutstanding" xlink:to="rgen_NumberOfSharesBasicOutstanding_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_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_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ProbabilityWeightedPresentValueMember" xlink:to="rgen_ProbabilityWeightedPresentValueMember_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_BusinessCombinationAcquisitionRelatedCosts" xlink:to="us-gaap_BusinessCombinationAcquisitionRelatedCosts_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:to="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_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="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_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="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ScheduleOfRelatedPartyTable" xlink:to="rgen_ScheduleOfRelatedPartyTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputTypeAxis" xlink:to="us-gaap_MeasurementInputTypeAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_RestructuringCostAndReserveAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_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="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment" xlink:to="rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment_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="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_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="srt_RangeAxis" xlink:to="srt_RangeAxis_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="rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="rgen_ScheduleOfAccruedLiabilitiesLineItems_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="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_CostOfSalesMember" xlink:to="us-gaap_CostOfSalesMember_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_BuildingsAndImprovementsGross" xlink:to="us-gaap_BuildingsAndImprovementsGross_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_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_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:to="rgen_BusinessCombinationConsiderationIndemnificationEscrow_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_NonEmployeeDirectorStockOptionMember" xlink:to="rgen_NonEmployeeDirectorStockOptionMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_CommitmentsAndContingenciesTable" xlink:to="rgen_CommitmentsAndContingenciesTable_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_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_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_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_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="rgen_AvailableForSaleSecuritiesAmortizedCostBasis" xlink:to="rgen_AvailableForSaleSecuritiesAmortizedCostBasis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AcceleratedDepreciationMember" xlink:to="rgen_AcceleratedDepreciationMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:to="us-gaap_StockIssuedDuringPeriodValueAcquisitions_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="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DebtInstrumentConvertibleIntoEquity" xlink:to="rgen_DebtInstrumentConvertibleIntoEquity_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssued1" xlink:to="us-gaap_StockIssued1_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1_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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TextBlockAbstract" xlink:to="us-gaap_TextBlockAbstract_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="rgen_FiniteLivedIntangibleLiabilitiesLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_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_EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_NGLImpactAMember" xlink:to="rgen_NGLImpactAMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AvitideIncMember" xlink:to="rgen_AvitideIncMember_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="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:to="us-gaap_RestructuringAndRelatedActivitiesAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_IncomeTaxesTable" xlink:to="rgen_IncomeTaxesTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_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="rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="rgen_SummaryOfSignificantAccountingPoliciesLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_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_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SubsidiarySaleOfStockAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_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_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_IncomeTaxAuthorityDomain" xlink:to="us-gaap_IncomeTaxAuthorityDomain_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_InventoryLineItems" xlink:to="us-gaap_InventoryLineItems_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_PrincipalOwnerMember" xlink:to="us-gaap_PrincipalOwnerMember_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_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_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_InflationReductionActOfTwoThousandTwentyTwoMember" xlink:to="rgen_InflationReductionActOfTwoThousandTwentyTwoMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_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_ConvertibleNotesPayableCurrent" xlink:to="us-gaap_ConvertibleNotesPayableCurrent_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_DebtInstrumentConvertibleThresholdTradingDays" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdTradingDays_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="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_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="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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipDomain" xlink:to="srt_OwnershipDomain_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_InventoryWorkInProcessNetOfReserves" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves_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_AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:to="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_BioflexMember" xlink:to="rgen_BioflexMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_NoncashInterestIncome" xlink:to="rgen_NoncashInterestIncome_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ScheduleOfAccruedLiabilitiesTable" xlink:to="rgen_ScheduleOfAccruedLiabilitiesTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_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="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_InventoryNet" xlink:to="us-gaap_InventoryNet_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_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_FacilityAndOtherExitCostsMember" xlink:to="rgen_FacilityAndOtherExitCostsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember_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_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock_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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_MeasurementInputRevenueVolumeDiscountRateMember" xlink:to="rgen_MeasurementInputRevenueVolumeDiscountRateMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_MeasurementInputProbabilityOfSuccessMember" xlink:to="rgen_MeasurementInputProbabilityOfSuccessMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue" xlink:to="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue_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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DilutiveEffectOnSharesOfConversionPremium" xlink:to="rgen_DilutiveEffectOnSharesOfConversionPremium_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_LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl"/>
    <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConvertibleDebtTableTextBlock" xlink:to="us-gaap_ConvertibleDebtTableTextBlock_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="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_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="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:to="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RoyaltyExpense" xlink:to="us-gaap_RoyaltyExpense_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="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue" xlink:to="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue_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="rgen_ScheduleOfConvertiableNoteInterestExpense" xlink:to="rgen_ScheduleOfConvertiableNoteInterestExpense_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="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment" xlink:to="rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConstructionInProgressGross" xlink:to="us-gaap_ConstructionInProgressGross_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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_TrueUpCostsDecember2020Member" xlink:to="rgen_TrueUpCostsDecember2020Member_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfessionalFees" xlink:to="us-gaap_ProfessionalFees_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_InventoryAdjustmentsMember" xlink:to="rgen_InventoryAdjustmentsMember_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_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_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_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="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_SaleOfStockNameOfTransactionDomain" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_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_PatentsMember" xlink:to="us-gaap_PatentsMember_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="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest" xlink:to="us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest_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="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_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="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="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="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_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_SpectrumIncMember" xlink:to="rgen_SpectrumIncMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_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="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_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_ProceedsFromConvertibleDebt" xlink:to="us-gaap_ProceedsFromConvertibleDebt_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:to="rgen_SummaryOfSignificantAccountingPoliciesTable_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_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_NewDateOfAnnualGoodwillImpairmentTest" xlink:to="us-gaap_NewDateOfAnnualGoodwillImpairmentTest_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:to="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_TypeOfAdoptionMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_MilliporeSigmaMember" xlink:to="rgen_MilliporeSigmaMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:to="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:to="us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_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_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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_WeightedAverageDiscountRate" xlink:to="rgen_WeightedAverageDiscountRate_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_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="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="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostsAndExpenses" xlink:to="us-gaap_CostsAndExpenses_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:to="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalOther_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="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_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_NumberOfOperatingSegments" xlink:to="us-gaap_NumberOfOperatingSegments_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_LongTermContingentConsideration" xlink:to="rgen_LongTermContingentConsideration_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_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="us-gaap_RevenuesAbstract" xlink:to="us-gaap_RevenuesAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_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="rgen_PuroliteMember" xlink:to="rgen_PuroliteMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:to="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_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_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_CashAndMoneyMarketFundsMember" xlink:to="rgen_CashAndMoneyMarketFundsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputPriceVolatilityMember" xlink:to="us-gaap_MeasurementInputPriceVolatilityMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:to="us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_PercentageOfSharesSubjectToForfeiture" xlink:to="rgen_PercentageOfSharesSubjectToForfeiture_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_MonteCarloSimulationMember" xlink:to="rgen_MonteCarloSimulationMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentArrangementMember" xlink:to="us-gaap_ResearchAndDevelopmentArrangementMember_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_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_HeldToMaturitySecuritiesCurrent" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AvitideLlcMember" xlink:to="rgen_AvitideLlcMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_PercentageOfCurrentFederalTaxExpenseBenefit" xlink:to="rgen_PercentageOfCurrentFederalTaxExpenseBenefit_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermPurchaseCommitmentAmount" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AvitideAndFlexbiosysMember" xlink:to="rgen_AvitideAndFlexbiosysMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductMember" xlink:to="us-gaap_ProductMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts" xlink:to="rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharePrice" xlink:to="us-gaap_SharePrice_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_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="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_TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod_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_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AvailableForSaleSecuritiesEstimatedFairValue" xlink:to="rgen_AvailableForSaleSecuritiesEstimatedFairValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ChiefFinancialOfficerMember" xlink:to="srt_ChiefFinancialOfficerMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_MetenovaAbMember" xlink:to="rgen_MetenovaAbMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTypeCategorizationMember" xlink:to="us-gaap_InvestmentTypeCategorizationMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpenseAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger" xlink:to="us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_StockholdersEquityNoteDisclosureTable" xlink:to="rgen_StockholdersEquityNoteDisclosureTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TrademarksMember" xlink:to="us-gaap_TrademarksMember_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_AmortizationOfFinancingCosts" xlink:to="us-gaap_AmortizationOfFinancingCosts_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ShortTermContingentConsideration" xlink:to="rgen_ShortTermContingentConsideration_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskTable_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_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAxis" xlink:to="us-gaap_CashAndCashEquivalentsAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseDebt" xlink:to="us-gaap_InterestExpenseDebt_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_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="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:to="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductInformationTable" xlink:to="us-gaap_ScheduleOfProductInformationTable_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_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_SupplementalCashFlowElementsAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_EarnoutConsiderationEarned" xlink:to="rgen_EarnoutConsiderationEarned_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition" xlink:to="rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition_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_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember" xlink:to="rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember_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_AccountingStandardsUpdate202006Member" xlink:to="us-gaap_AccountingStandardsUpdate202006Member_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:to="rgen_ReconciliationOfBasicAndDilutedSharesAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryCurrentTable" xlink:to="us-gaap_InventoryCurrentTable_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="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_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_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="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:to="rgen_RestrictedStockAndPerformanceStockUnitsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicConcentrationRiskMember" xlink:to="us-gaap_GeographicConcentrationRiskMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeNamesMember" xlink:to="us-gaap_TradeNamesMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncompeteAgreementsMember" xlink:to="us-gaap_NoncompeteAgreementsMember_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_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentGross" xlink:to="us-gaap_MachineryAndEquipmentGross_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_NoncashinventorywriteOff" xlink:to="rgen_NoncashinventorywriteOff_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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember" xlink:to="rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="rgen_StockholdersEquityNoteDisclosureLineItems_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_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_InterestExpense" xlink:to="us-gaap_InterestExpense_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfConvertibleDebt" xlink:to="us-gaap_RepaymentsOfConvertibleDebt_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardDateAxis" xlink:to="us-gaap_AwardDateAxis_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_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_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="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_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_ContingentConsiderationMember" xlink:to="rgen_ContingentConsiderationMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_LossOnDebtConversion" xlink:to="rgen_LossOnDebtConversion_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:to="us-gaap_WeightedAverageNumberOfSharesRestrictedStock_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain" xlink:to="rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseDebtExcludingAmortization" xlink:to="us-gaap_InterestExpenseDebtExcludingAmortization_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationTechniqueAxis" xlink:to="us-gaap_ValuationTechniqueAxis_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="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_CommitmentsAndContingenciesLineItems" xlink:to="rgen_CommitmentsAndContingenciesLineItems_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_CostsAndExpensesAbstract" xlink:to="us-gaap_CostsAndExpensesAbstract_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_RevenueAndVolumeDiscountRate" xlink:to="rgen_RevenueAndVolumeDiscountRate_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_RevenueAndVolumeBasedPaymentsMember" xlink:to="rgen_RevenueAndVolumeBasedPaymentsMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesGross" xlink:to="us-gaap_FurnitureAndFixturesGross_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_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_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="us-gaap_TypeOfRestructuringDomain_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:to="rgen_OptionToPurchaseAdditionalDebtFaceAmount_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:to="us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_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_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_DeferredRevenueCurrent" xlink:to="us-gaap_DeferredRevenueCurrent_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_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NorthAmericaMember" xlink:to="srt_NorthAmericaMember_lbl"/>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="rgen_NonExecutiveMember" xlink:to="rgen_NonExecutiveMember_lbl"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020197184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - shares<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Oct. 27, 2023</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_AmendmentFlag', window );">Amendment Flag</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_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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023 <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000730272<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_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="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">Sep. 30,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_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="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_EntityFileNumber', window );">Securities Act File Number</a></td>
<td class="text">000-14656<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">REPLIGEN CORP<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">RGEN<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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 12(b) Security</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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">04-2729386<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">41 Seyon Street, Bldg. 1, Suite 100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">Waltham<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">MA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">02453<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">781<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Smaller reporting 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_EntityEmergingGrowthCompany', window );">Emerging growth company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">250-0111<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,832,013<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>12
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020992816">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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">$ 630,779<span></span>
</td>
<td class="nump">$ 523,458<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HeldToMaturitySecuritiesCurrent', window );">Marketable securities held to maturity</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">100,299<span></span>
</td>
</tr>
<tr class="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 );">Accounts receivable, net of reserves of $1,803 and $1,365 at September 30, 2023 and December 31, 2022, respectively</a></td>
<td class="nump">106,158<span></span>
</td>
<td class="nump">116,247<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">211,372<span></span>
</td>
<td class="nump">238,277<span></span>
</td>
</tr>
<tr class="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 current assets</a></td>
<td class="nump">30,147<span></span>
</td>
<td class="nump">19,837<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_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">978,456<span></span>
</td>
<td class="nump">998,118<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">201,618<span></span>
</td>
<td class="nump">190,673<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">343,729<span></span>
</td>
<td class="nump">353,676<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">869,252<span></span>
</td>
<td class="nump">855,513<span></span>
</td>
</tr>
<tr class="re">
<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 tax assets</a></td>
<td class="nump">1,546<span></span>
</td>
<td class="nump">840<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right of use assets</a></td>
<td class="nump">118,084<span></span>
</td>
<td class="nump">125,023<span></span>
</td>
</tr>
<tr class="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 noncurrent assets</a></td>
<td class="nump">1,444<span></span>
</td>
<td class="nump">815<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_AssetsNoncurrent', window );">Total noncurrent assets</a></td>
<td class="nump">1,535,673<span></span>
</td>
<td class="nump">1,526,540<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">2,514,129<span></span>
</td>
<td class="nump">2,524,658<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">18,961<span></span>
</td>
<td class="nump">27,554<span></span>
</td>
</tr>
<tr class="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 liability</a></td>
<td class="nump">3,315<span></span>
</td>
<td class="nump">6,957<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent', window );">Current contingent consideration</a></td>
<td class="nump">12,589<span></span>
</td>
<td class="nump">13,950<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">42,543<span></span>
</td>
<td class="nump">71,120<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConvertibleNotesPayableCurrent', window );">Convertible Senior Notes, net</a></td>
<td class="nump">285,956<span></span>
</td>
<td class="nump">284,615<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">363,364<span></span>
</td>
<td class="nump">404,196<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent', window );">Deferred tax liabilities</a></td>
<td class="nump">14,036<span></span>
</td>
<td class="nump">23,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_OperatingLeaseLiabilityNoncurrent', window );">Noncurrent operating lease liability</a></td>
<td class="nump">130,615<span></span>
</td>
<td class="nump">131,389<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent', window );">Noncurrent contingent consideration</a></td>
<td class="nump">13,759<span></span>
</td>
<td class="nump">51,559<span></span>
</td>
</tr>
<tr class="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 noncurrent liabilities</a></td>
<td class="nump">3,798<span></span>
</td>
<td class="nump">3,814<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_LiabilitiesNoncurrent', window );">Total noncurrent liabilities</a></td>
<td class="nump">162,208<span></span>
</td>
<td class="nump">209,762<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_Liabilities', window );">Total liabilities</a></td>
<td class="nump">525,572<span></span>
</td>
<td class="nump">613,958<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (Note 10)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $0.01 par value, 5,000,000 shares authorized, no shares issued or outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value; 80,000,000 shares authorized; 55,774,706 shares at September 30, 2023 and 55,557,698 shares at December 31, 2022 issued and outstanding</a></td>
<td class="nump">558<span></span>
</td>
<td class="nump">556<span></span>
</td>
</tr>
<tr class="re">
<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">1,567,233<span></span>
</td>
<td class="nump">1,547,266<span></span>
</td>
</tr>
<tr class="ro">
<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">(43,571)<span></span>
</td>
<td class="num">(34,394)<span></span>
</td>
</tr>
<tr class="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 );">Accumulated earnings</a></td>
<td class="nump">464,337<span></span>
</td>
<td class="nump">397,272<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders' equity</a></td>
<td class="nump">1,988,557<span></span>
</td>
<td class="nump">1,910,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_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 2,514,129<span></span>
</td>
<td class="nump">$ 2,524,658<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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://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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -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_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/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-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_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/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>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="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/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/2147480167/946-830-55-12<br><br>Reference 8: 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/2147479440/944-210-S99-1<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> -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 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/2147479617/946-210-S99-1<br><br>Reference 11: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: 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 14: 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 15: 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 16: 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 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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<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)(i))<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)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 21: 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 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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: 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 24: 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 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: 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/2147479853/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>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="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_AssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed 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://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/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 7: 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 8: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<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)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: 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 12: 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 13: 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 14: 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 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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: 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_AssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 arising from contingent consideration in a business combination, expected to be settled within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479668/805-30-25-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Subparagraph b<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479613/805-30-35-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_BusinessCombinationContingentConsiderationLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 arising from contingent consideration in a business combination, expected to be settled beyond 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> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479668/805-30-25-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Subparagraph b<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479613/805-30-35-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_BusinessCombinationContingentConsiderationLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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://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/2147479440/944-210-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(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -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_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://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)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(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_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_ConvertibleNotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the portion of long-term debt due within one year or the operating cycle if longer identified as Convertible Notes Payable. Convertible Notes Payable is a written promise to pay a note which can be exchanged for a specified amount of another, related security, at the option of the issuer and the holder.</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 210<br> -SubTopic 10<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_ConvertibleNotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_DeferredTaxAndOtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deferred tax asset, of deferred tax liability attributable to taxable differences, with jurisdictional netting, and liabilities classified as noncurrent and 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_DeferredTaxAndOtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/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 4: 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 5: 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 6: 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 7: 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/2147479853/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_HeldToMaturitySecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of investment in debt security measured at amortized cost (held-to-maturity), 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 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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-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_HeldToMaturitySecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482686/350-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="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 (c)<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 (b)<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 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 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(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: 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 6: 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 7: 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/2147480167/946-830-55-12<br><br>Reference 8: 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/2147479617/946-210-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/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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: 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 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: 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><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -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_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/2147479440/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/2147479853/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://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 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 (b)<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 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 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(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: 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 6: 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 7: 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 8: 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 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/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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: 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 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -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_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_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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> -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/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/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 9: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: 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 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)(5))<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 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 14: 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 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)(iii)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: 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 19: 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 20: 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 21: 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 201.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 22: 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 201.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 23: 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 201.5-02(26))<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_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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://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)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<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_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/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)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: 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/2147480842/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 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 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 (h)(2)<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 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 5: 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/2147479440/944-210-S99-1<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(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<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><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(30)(a)(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_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://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: 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/2147483575/946-220-S99-3<br><br>Reference 6: 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/2147483575/946-220-S99-3<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(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020854816">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, reserve for doubtful accounts</a></td>
<td class="nump">$ 1,803<span></span>
</td>
<td class="nump">$ 1,365<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding</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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized</a></td>
<td class="nump">80,000,000<span></span>
</td>
<td class="nump">80,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_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">55,774,706<span></span>
</td>
<td class="nump">55,557,698<span></span>
</td>
</tr>
<tr class="re">
<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, shares outstanding</a></td>
<td class="nump">55,774,706<span></span>
</td>
<td class="nump">55,557,698<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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/2147479617/946-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(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_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://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/2147479617/946-210-S99-2<br><br>Reference 3: 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/2147483575/946-220-S99-3<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(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: 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/2147483575/946-220-S99-3<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(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_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://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><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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://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/2147479617/946-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(28))<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_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>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 2: 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/2147483575/946-220-S99-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<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(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<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(28))<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_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094021012480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 141,192<span></span>
</td>
<td class="nump">$ 200,741<span></span>
</td>
<td class="nump">$ 483,021<span></span>
</td>
<td class="nump">$ 614,774<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostsAndExpensesAbstract', window );"><strong>Costs and operating expenses:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Cost of product revenue</a></td>
<td class="nump">104,634<span></span>
</td>
<td class="nump">86,514<span></span>
</td>
<td class="nump">265,786<span></span>
</td>
<td class="nump">255,130<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">10,577<span></span>
</td>
<td class="nump">10,228<span></span>
</td>
<td class="nump">32,437<span></span>
</td>
<td class="nump">32,823<span></span>
</td>
</tr>
<tr class="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 );">Selling, general and administrative</a></td>
<td class="nump">55,465<span></span>
</td>
<td class="nump">53,643<span></span>
</td>
<td class="nump">160,601<span></span>
</td>
<td class="nump">162,592<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Contingent consideration</a></td>
<td class="num">(34,292)<span></span>
</td>
<td class="num">(2,309)<span></span>
</td>
<td class="num">(31,266)<span></span>
</td>
<td class="num">(11,604)<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_CostsAndExpenses', window );">Total costs and operating expenses</a></td>
<td class="nump">136,384<span></span>
</td>
<td class="nump">148,076<span></span>
</td>
<td class="nump">427,558<span></span>
</td>
<td class="nump">438,941<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_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">4,808<span></span>
</td>
<td class="nump">52,665<span></span>
</td>
<td class="nump">55,463<span></span>
</td>
<td class="nump">175,833<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpenseAbstract', window );"><strong>Other income (expenses):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentIncomeNet', window );">Investment income</a></td>
<td class="nump">6,662<span></span>
</td>
<td class="nump">2,177<span></span>
</td>
<td class="nump">18,112<span></span>
</td>
<td class="nump">2,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_InterestExpense', window );">Interest expense</a></td>
<td class="num">(269)<span></span>
</td>
<td class="num">(329)<span></span>
</td>
<td class="num">(813)<span></span>
</td>
<td class="num">(892)<span></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_rgen_AmortizationOfDebtIssuanceCost', window );">Amortization of debt issuance costs</a></td>
<td class="num">(459)<span></span>
</td>
<td class="num">(455)<span></span>
</td>
<td class="num">(1,373)<span></span>
</td>
<td class="num">(1,360)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income (expenses)</a></td>
<td class="nump">895<span></span>
</td>
<td class="num">(6,591)<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
<td class="num">(10,389)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other income (expenses), net</a></td>
<td class="nump">6,829<span></span>
</td>
<td class="num">(5,198)<span></span>
</td>
<td class="nump">17,426<span></span>
</td>
<td class="num">(9,679)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">11,637<span></span>
</td>
<td class="nump">47,467<span></span>
</td>
<td class="nump">72,889<span></span>
</td>
<td class="nump">166,154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (benefit) provision</a></td>
<td class="num">(6,535)<span></span>
</td>
<td class="nump">7,062<span></span>
</td>
<td class="nump">5,824<span></span>
</td>
<td class="nump">28,924<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 18,172<span></span>
</td>
<td class="nump">$ 40,405<span></span>
</td>
<td class="nump">$ 67,065<span></span>
</td>
<td class="nump">$ 137,230<span></span>
</td>
</tr>
<tr class="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:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 0.33<span></span>
</td>
<td class="nump">$ 0.73<span></span>
</td>
<td class="nump">$ 1.2<span></span>
</td>
<td class="nump">$ 2.48<span></span>
</td>
</tr>
<tr class="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 (Note 12)</a></td>
<td class="nump">$ 0.32<span></span>
</td>
<td class="nump">$ 0.71<span></span>
</td>
<td class="nump">$ 1.18<span></span>
</td>
<td class="nump">$ 2.39<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average common shares outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">55,766<span></span>
</td>
<td class="nump">55,498<span></span>
</td>
<td class="nump">55,688<span></span>
</td>
<td class="nump">55,432<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (Note 12)</a></td>
<td class="nump">56,940<span></span>
</td>
<td class="nump">57,304<span></span>
</td>
<td class="nump">56,933<span></span>
</td>
<td class="nump">57,598<span></span>
</td>
</tr>
<tr class="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">$ 18,172<span></span>
</td>
<td class="nump">$ 40,405<span></span>
</td>
<td class="nump">$ 67,065<span></span>
</td>
<td class="nump">$ 137,230<span></span>
</td>
</tr>
<tr class="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>Other comprehensive income (loss):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">(6,382)<span></span>
</td>
<td class="num">(18,170)<span></span>
</td>
<td class="num">(9,177)<span></span>
</td>
<td class="num">(38,375)<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</a></td>
<td class="nump">11,790<span></span>
</td>
<td class="nump">22,235<span></span>
</td>
<td class="nump">57,888<span></span>
</td>
<td class="nump">98,855<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">141,156<span></span>
</td>
<td class="nump">200,708<span></span>
</td>
<td class="nump">482,910<span></span>
</td>
<td class="nump">614,668<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_RoyaltyMember', window );">Royalty and other revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 36<span></span>
</td>
<td class="nump">$ 33<span></span>
</td>
<td class="nump">$ 111<span></span>
</td>
<td class="nump">$ 106<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_AmortizationOfDebtIssuanceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of debt issuance cost.</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;">rgen_AmortizationOfDebtIssuanceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-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;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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/2147483589/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/2147483586/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://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://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 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),(d))<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_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_CostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total costs of sales and operating expenses for the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostsAndExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostsAndExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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/2147483589/942-220-S99-1<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147483589/942-220-S99-1<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(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: 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 16: 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/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/2147483586/944-220-S99-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 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<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 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/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 5: 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 6: 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 (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/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/2147479557/942-235-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 940<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481913/940-20-25-1<br><br>Reference 9: 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 10: 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/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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 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 4: 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 5: 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: 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 8: 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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-3<br><br>Reference 3: 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(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-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 22<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br><br>Reference 6: 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.9)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 7: 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 (210.5-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<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/2147483013/835-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_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accretion (amortization) of discount (premium), and investment expense, of interest income and dividend income on nonoperating securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7(a),(b))<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_InvestmentIncomeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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 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 2: 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 3: 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 4: 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 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 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 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 (f)<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 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 9: 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 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 (a)<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 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<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 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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 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 30: 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 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/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 2: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<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 (f)<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/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 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 (c)<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_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_OtherNonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482916/730-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482517/912-730-25-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<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_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 2: 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 3: 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 4: 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 5: 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 6: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 8: 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 9: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenuesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ProductMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_RoyaltyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_RoyaltyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094012208336">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)<br></strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-In Capital</div></th>
<th class="th"><div>Accumulated Other Comprehensive Loss</div></th>
<th class="th"><div>Retained Earnings</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_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment</a></td>
<td class="num">$ (38,375,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (38,375,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, 2021</a></td>
<td class="nump">1,750,067,000<span></span>
</td>
<td class="nump">$ 553,000<span></span>
</td>
<td class="nump">$ 1,572,340,000<span></span>
</td>
<td class="num">(16,886,000)<span></span>
</td>
<td class="nump">$ 194,060,000<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_SharesOutstanding', window );">Beginning Balance (in shares) at Dec. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,321,457<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">137,230,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="nump">137,230,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_StockIssuedDuringPeriodValueConversionOfUnits', window );">Issuance of common stock for debt conversion</a></td>
<td class="num">(5,000)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(5,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_StockIssuedDuringPeriodSharesConversionOfUnits', window );">Issuance of common stock for debt conversion (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and vesting of stock units</a></td>
<td class="nump">2,784,000<span></span>
</td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">2,781,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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and vesting of stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">281,839<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units</a></td>
<td class="num">(15,829,000)<span></span>
</td>
<td class="num">$ (1,000)<span></span>
</td>
<td class="num">(15,828,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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(83,665)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense</a></td>
<td class="nump">21,054,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21,054,000<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 Sep. 30, 2022</a></td>
<td class="nump">1,835,109,000<span></span>
</td>
<td class="nump">$ 555,000<span></span>
</td>
<td class="nump">1,541,272,000<span></span>
</td>
<td class="num">(55,261,000)<span></span>
</td>
<td class="nump">348,543,000<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 (Accounting Standards Update 2020-06 [Member]) at Sep. 30, 2022</a></td>
<td class="num">(21,817,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(39,070,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,253,000<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_SharesOutstanding', window );">Ending Balance (in shares) at Sep. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,519,646<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment</a></td>
<td class="num">(18,170,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(18,170,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 Jun. 30, 2022</a></td>
<td class="nump">1,805,364,000<span></span>
</td>
<td class="nump">$ 555,000<span></span>
</td>
<td class="nump">1,533,762,000<span></span>
</td>
<td class="num">(37,091,000)<span></span>
</td>
<td class="nump">308,138,000<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_SharesOutstanding', window );">Beginning Balance (in shares) at Jun. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,465,918<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">40,405,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="nump">40,405,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_StockIssuedDuringPeriodValueConversionOfUnits', window );">Issuance of common stock for debt conversion</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits', window );">Issuance of common stock for debt conversion (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and vesting of stock units</a></td>
<td class="nump">2,321,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">2,321,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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and vesting of stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">59,112<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units</a></td>
<td class="num">(1,070,000)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(1,070,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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,387)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense</a></td>
<td class="nump">6,154,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,154,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_AdjustmentsToAdditionalPaidInCapitalOther', window );">Other</a></td>
<td class="nump">105,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">105,000<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 Sep. 30, 2022</a></td>
<td class="nump">1,835,109,000<span></span>
</td>
<td class="nump">$ 555,000<span></span>
</td>
<td class="nump">1,541,272,000<span></span>
</td>
<td class="num">(55,261,000)<span></span>
</td>
<td class="nump">348,543,000<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 (Accounting Standards Update 2020-06 [Member]) at Sep. 30, 2022</a></td>
<td class="num">(21,817,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(39,070,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,253,000<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_SharesOutstanding', window );">Ending Balance (in shares) at Sep. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,519,646<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment</a></td>
<td class="num">(9,177,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9,177,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, 2022</a></td>
<td class="nump">1,910,700,000<span></span>
</td>
<td class="nump">$ 556,000<span></span>
</td>
<td class="nump">1,547,266,000<span></span>
</td>
<td class="num">(34,394,000)<span></span>
</td>
<td class="nump">397,272,000<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_SharesOutstanding', window );">Beginning Balance (in shares) at Dec. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,557,698<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">67,065,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="nump">67,065,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_StockIssuedDuringPeriodValueConversionOfUnits', window );">Issuance of common stock for debt conversion</a></td>
<td class="num">(13,000)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(13,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits', window );">Issuance of common stock for debt conversion (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and vesting of stock units</a></td>
<td class="nump">356,000<span></span>
</td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">353,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and vesting of stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">212,589<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units</a></td>
<td class="num">(12,178,000)<span></span>
</td>
<td class="num">$ (1,000)<span></span>
</td>
<td class="num">(12,177,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(69,625)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Issuance of commons stock pursuant to the acquisition</a></td>
<td class="nump">5,465,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">5,465,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesAcquisitions', window );">Issuance of commons stock pursuant to the acquisition, (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">31,415<span></span>
</td>
<td class="text">&#160;<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_rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment', window );">Issuance of common stock pursuant to the acquisition of FlexBiosys, Inc.</a></td>
<td class="nump">7,229,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">7,229,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment', window );">Issuance of common stock pursuant to the Avitide, Inc.contingent consideration earnout payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">42,621<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense</a></td>
<td class="nump">19,110,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">19,110,000<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 Sep. 30, 2023</a></td>
<td class="nump">1,988,557,000<span></span>
</td>
<td class="nump">$ 558,000<span></span>
</td>
<td class="nump">1,567,233,000<span></span>
</td>
<td class="num">(43,571,000)<span></span>
</td>
<td class="nump">464,337,000<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_SharesOutstanding', window );">Ending Balance (in shares) at Sep. 30, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,774,706<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment</a></td>
<td class="num">(6,382,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,382,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 Jun. 30, 2023</a></td>
<td class="nump">1,970,926,000<span></span>
</td>
<td class="nump">$ 557,000<span></span>
</td>
<td class="nump">1,561,393,000<span></span>
</td>
<td class="num">(37,189,000)<span></span>
</td>
<td class="nump">446,165,000<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_SharesOutstanding', window );">Beginning Balance (in shares) at Jun. 30, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,744,896<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">18,172,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="nump">18,172,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_StockIssuedDuringPeriodValueConversionOfUnits', window );">Issuance of common stock for debt conversion</a></td>
<td class="num">(10,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(10,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_StockIssuedDuringPeriodSharesConversionOfUnits', window );">Issuance of common stock for debt conversion (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and vesting of stock units</a></td>
<td class="nump">294,000<span></span>
</td>
<td class="nump">$ 1,000<span></span>
</td>
<td class="nump">293,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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and vesting of stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36,195<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units</a></td>
<td class="num">(1,038,000)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(1,038,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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,387)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Issuance of commons stock pursuant to the acquisition</a></td>
<td class="nump">222,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">222,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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">6,373,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,373,000<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 Sep. 30, 2023</a></td>
<td class="nump">$ 1,988,557,000<span></span>
</td>
<td class="nump">$ 558,000<span></span>
</td>
<td class="nump">$ 1,567,233,000<span></span>
</td>
<td class="num">$ (43,571,000)<span></span>
</td>
<td class="nump">$ 464,337,000<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_SharesOutstanding', window );">Ending Balance (in shares) at Sep. 30, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,774,706<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock Issued During Period, shares,contingent consideration earnout payment.</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;">rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock issued during period, value,contingent consideration earnout payment</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;">rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated adjustment, net of tax, that results from the process of translating subsidiary financial statements and foreign equity investments into the reporting currency from the functional currency of the reporting entity, net of reclassification of realized foreign currency translation gains or 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/2003/role/disclosureRef<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 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482736/825-10-45-5A<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 10A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<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 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_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to equity for grantee's tax withholding obligation 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 increase (decrease) in additional paid in capital (APIC).</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_AdjustmentsToAdditionalPaidInCapitalOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 2: 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 3: 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 4: 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 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 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 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 (f)<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 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 9: 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 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 (a)<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 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<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 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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 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 30: 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 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 which are neither cancelled nor held in the treasury.</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_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 used to settle grantee's tax withholding obligation 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period pursuant to acquisitions.</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://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><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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesAcquisitions</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesConversionOfUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares issued during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit).</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 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 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(29))<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> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="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 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 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(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_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pursuant to acquisitions 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> -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 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 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -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_StockIssuedDuringPeriodValueAcquisitions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_StockIssuedDuringPeriodValueConversionOfUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit).</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 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 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -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_StockIssuedDuringPeriodValueConversionOfUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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://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><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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: 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/2147483575/946-220-S99-3<br><br>Reference 6: 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/2147483575/946-220-S99-3<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(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate202006Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate202006Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>16
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019371040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">$ 67,065<span></span>
</td>
<td class="nump">$ 137,230<span></span>
</td>
</tr>
<tr class="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_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">50,942<span></span>
</td>
<td class="nump">36,605<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization of debt issuance costs</a></td>
<td class="nump">1,373<span></span>
</td>
<td class="nump">1,360<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation</a></td>
<td class="nump">19,110<span></span>
</td>
<td class="nump">21,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_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes, net</a></td>
<td class="num">(9,756)<span></span>
</td>
<td class="nump">1,722<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Contingent consideration</a></td>
<td class="num">(31,266)<span></span>
</td>
<td class="num">(11,604)<span></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_rgen_NoncashInterestIncome', window );">Non-cash interest income</a></td>
<td class="num">(2,023)<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_OtherNoncashIncomeExpense', window );">Other</a></td>
<td class="nump">861<span></span>
</td>
<td class="nump">210<span></span>
</td>
</tr>
<tr class="re">
<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, excluding impact of acquisitions:</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_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="nump">8,315<span></span>
</td>
<td class="num">(8,609)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">25,979<span></span>
</td>
<td class="num">(64,308)<span></span>
</td>
</tr>
<tr class="ro">
<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">(10,733)<span></span>
</td>
<td class="nump">168<span></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_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset', window );">Operating lease right of use assets</a></td>
<td class="nump">10,203<span></span>
</td>
<td class="num">(22,033)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(707)<span></span>
</td>
<td class="num">(298)<span></span>
</td>
</tr>
<tr class="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">(8,619)<span></span>
</td>
<td class="num">(10,124)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="num">(28,294)<span></span>
</td>
<td class="nump">3,043<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingLeaseLiability', window );">Operating lease Liabilities</a></td>
<td class="num">(7,676)<span></span>
</td>
<td class="nump">26,157<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities', window );">Long-term liabilities</a></td>
<td class="nump">79<span></span>
</td>
<td class="num">(372)<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 );">Total cash provided by operating activities</a></td>
<td class="nump">84,853<span></span>
</td>
<td class="nump">110,201<span></span>
</td>
</tr>
<tr class="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_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisitions, net of cash acquired</a></td>
<td class="num">(27,843)<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_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities', window );">Proceeds from maturity of marketable securities held to maturity</a></td>
<td class="nump">102,323<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_PaymentsToAcquireSoftware', window );">Additions to capitalized software costs</a></td>
<td class="num">(2,736)<span></span>
</td>
<td class="num">(2,568)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property, plant and equipment</a></td>
<td class="num">(25,135)<span></span>
</td>
<td class="num">(64,390)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireIntangibleAssets', window );">Purchase of intellectual property</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(45,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_PaymentsForProceedsFromOtherInvestingActivities', window );">Other investing activities</a></td>
<td class="nump">21<span></span>
</td>
<td class="nump">30<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 );">Total cash provided by (used in) investing activities</a></td>
<td class="nump">46,630<span></span>
</td>
<td class="num">(111,928)<span></span>
</td>
</tr>
<tr class="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_ProceedsFromStockOptionsExercised', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">356<span></span>
</td>
<td class="nump">2,784<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment of tax withholding obligation on vesting of restricted stock</a></td>
<td class="num">(12,178)<span></span>
</td>
<td class="num">(15,829)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfConvertibleDebt', window );">Repayment of Convertible Senior Notes</a></td>
<td class="num">(33)<span></span>
</td>
<td class="num">(18)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payment of earnout consideration</a></td>
<td class="num">(7,298)<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_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from issuance of common stock, net</a></td>
<td class="num">(13)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Total cash used in financing activities</a></td>
<td class="num">(19,166)<span></span>
</td>
<td class="num">(13,063)<span></span>
</td>
</tr>
<tr class="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 and cash equivalents</a></td>
<td class="num">(4,996)<span></span>
</td>
<td class="num">(15,661)<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 increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">107,321<span></span>
</td>
<td class="num">(30,451)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, beginning of period</a></td>
<td class="nump">523,458<span></span>
</td>
<td class="nump">603,814<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents, end of period</a></td>
<td class="nump">630,779<span></span>
</td>
<td class="nump">573,363<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', window );"><strong>Supplemental disclosure of non-cash investing and financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Assets acquired under operating leases</a></td>
<td class="nump">1,129<span></span>
</td>
<td class="nump">25,705<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=rgen_FlexbiosysIncMember', window );">FlexBiosys, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', window );"><strong>Supplemental disclosure of non-cash investing and financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssued1', window );">Fair value of common stock issued for acquisition</a></td>
<td class="nump">5,465<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_AvitideIncMember', window );">Avitide, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', window );"><strong>Supplemental disclosure of non-cash investing and financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition', window );">Fair value of contingent consideration earnouts related to acquisition</a></td>
<td class="nump">$ 7,229<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contingent consideration earnouts related to acquisition.</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;">rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating lease right of use asset.</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;">rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_rgen_NoncashInterestIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncash interest 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;">rgen_NoncashInterestIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AmortizationOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to 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/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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-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;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/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_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> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<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 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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 6: 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_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_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/2147481877/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_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_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation 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/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><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -SubTopic 20<br> -Topic 842<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 noncurrent operating 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_IncreaseDecreaseInOtherNoncurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 2: 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 3: 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 4: 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 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 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 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 (f)<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 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 9: 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 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 (a)<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 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<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 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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 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 30: 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 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNoncashIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNoncashIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 15<br> -Subparagraph (f)<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_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 230<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_PaymentsForProceedsFromOtherInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to satisfy grantee's tax withholding obligation 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 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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a business, net of the cash acquired from the purchase.</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 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_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireSoftware">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from vendors of software programs or applications for internal use (that is, not to be sold, leased or otherwise marketed to others) that qualify for capitalization.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireSoftware</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the additional capital contribution to the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the sale or maturity of long-term held-to-maturity securities.</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 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-11<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 12<br> -Subparagraph (a)<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_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfConvertibleDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from the repayment of a long-term debt instrument which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder.</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 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_RepaymentsOfConvertibleDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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_StockIssued1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fair value of stock issued in noncash 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-4<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 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-3<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 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-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_StockIssued1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_SupplementalCashFlowElementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowElementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_AvitideIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_AvitideIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>17
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022898448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2023 </div>
<div>shares</div>
</th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">FlexBiosys, Inc.</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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued', window );">Shares of common stock issued for acquisition</a></td>
<td class="nump">31,415<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_AvitideIncMember', window );">Avitide, Inc.</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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued', window );">Shares of common stock issued for acquisition</a></td>
<td class="nump">42,621<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity interests issued or issuable to acquire 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 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_AvitideIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_AvitideIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094023335824">
<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>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">$ 18,172<span></span>
</td>
<td class="nump">$ 40,405<span></span>
</td>
<td class="nump">$ 67,065<span></span>
</td>
<td class="nump">$ 137,230<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 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 2: 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 3: 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 4: 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 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 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 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 (f)<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 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 9: 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 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 (a)<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 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<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 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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 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 30: 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 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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>19
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020187408">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_MtrlTermsOfTrdArrTextBlock', window );">Material Terms of Trading Arrangement</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of the Company's directors or officers (as defined in Rule 16a-1(f) of the Securities Exchange Act of 1934) adopted, modified, or terminated a Rule 10(b)5-1 trading arrangement during the Company's fiscal quarter ended September 30, 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </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_ecd_Rule10b51ArrAdoptedFlag', window );">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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_MtrlTermsOfTrdArrTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_MtrlTermsOfTrdArrTextBlock</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>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_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>20
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094024824080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_SignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">1.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Summary of Significant Accounting Policies </span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Basis of Presentation</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The condensed consolidated financial statements included herein have been prepared by Repligen Corporation (the &#8220;Company&#8221;, &#8220;Repligen&#8221;, &#8220;our&#8221; or &#8220;we&#8221;) in accordance with generally accepted accounting principles accepted in the United States (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the United States Securities and Exchange Commission (&#8220;SEC&#8221;), for Quarterly Reports on Form 10-Q and Article 10 of Regulation S-X and do not include all of the information and footnote disclosures required by GAAP. These condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and accompanying notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended December 31, 2022, which was filed with the SEC on February 22, 2023 (&#8220;Form 10-K&#8221;).</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. The business and economic uncertainty resulting from government-mandated actions in response to the COVID-19 pandemic, including all subsequent variants of the SARS-CoV-2 coronavirus ("COVID-19"), global geopolitical conflicts, supply chain challenges, cost pressure and the overall effects of the current high inflation environment on customers' purchasing patterns has made such estimates more difficult to calculate. Accordingly, actual results could differ from those estimates.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The condensed consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries.  All significant intercompany accounts and transactions have been eliminated in consolidation.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company made no material changes in the application of its significant accounting policies that were disclosed in its Form 10-K. In the opinion of the Company, the accompanying unaudited condensed consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of its financial position as of September 30, 2023, its results of operations for the three and nine months ended September 30, 2023 and 2022 and cash flows for the three and nine months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Recent Accounting Standards Updates</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider the applicability and impact of all Accounting Standards Updates ("ASU" or "ASUs") on the Company&#8217;s condensed consolidated financial statements. As of September 30, 2023, there were no accounting standards or ASUs recently issued or effective during the fiscal year that would have a material effect on the Company's condensed consolidated financial statements or disclosures.</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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020073728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_DisclosureTextBlockAbstract', window );"><strong>Disclosure Text Block [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 Measurements</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">2.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair Value Measurements</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company uses various valuation approaches in determining the fair value of its assets and liabilities. The Company employs a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that market participants would use in pricing the asset or liability based on market data obtained from sources independent of the Company. Unobservable inputs are inputs that reflect the Company&#8217;s assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. The fair value hierarchy is broken down into three levels based on the source of inputs as follows:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:95.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:12.359%;"></td>
      <td style="width:87.641%;"></td>
     </tr>
     <tr style="height:10pt;">
      <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 1 -</span></p></td>
      <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that the Company has the ability to access</span></p></td>
     </tr>
     <tr style="height:10pt;">
      <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 2 -</span></p></td>
      <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities</span></p></td>
     </tr>
     <tr style="height:10pt;">
      <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 3 -</span></p></td>
      <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Valuations based on inputs that are unobservable and significant to the overall fair value measurement.</span></p></td>
     </tr>
    </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The availability of observable inputs can vary among the various types of financial assets and liabilities. To the extent that the valuation is based on models or inputs that are less observable or unobservable in the market, the determination of fair value requires more judgment. In certain cases, the inputs used to measure fair value may fall into different levels of the fair value hierarchy. In such cases, for financial statement disclosure purposes, the level in the fair value hierarchy within which the fair value measurement is categorized is based on the lowest level input that is significant to the overall fair value measurement.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Cash, Cash Equivalents and Marketable Securities Held to Maturity</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the Company's cash, cash equivalents and marketable securities held to maturity as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022 (amounts in thousands):</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:46.843%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized<br/>&#160;Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Gains</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Losses</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and money market funds</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash and cash equivalents</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">As of December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized <br/>Cost</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Gains</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Losses</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and money market funds</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash and cash equivalents</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Marketable securities held to maturity:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">U.S. treasury bills &#8211; short-term</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,299</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,323</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash, cash equivalents and marketable securities</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">623,757</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">623,781</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the fourth quarter of 2022, the Company purchased $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of 6-month U.S. treasury bills with the positive intent and ability to hold them until maturity. Therefore, the Company classified this investment as held to maturity and stated it at amortized cost on the condensed consolidated balance sheet. These U.S. treasury bills matured in June 2023. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The amortized cost and the fair value of the Company's held to maturity securities by contractual maturity at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022 is summarized below:</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:57.008%;"></td>
        <td style="width:2.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.440999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.440999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.703%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized<br/>&#160;Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Maturity of one year or less</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,299</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,323</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,299</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,323</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Fair Value Measured on a Recurring Basis</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial assets and financial liabilities measured at fair value on a recurring basis consist of the following as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022 (amounts in thousands):</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:46.501%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 2</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 3</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Money market accounts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">389,473</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">389,473</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Liabilities:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Short-term contingent consideration</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">12,589</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">12,589</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Long-term contingent consideration</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,759</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,759</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">As of December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 2</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 3</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Money market accounts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">343,929</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">343,929</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Liabilities:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Short-term contingent consideration</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,950</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,950</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Long-term contingent consideration</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">51,559</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">51,559</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contingent Consideration &#8211; Earnouts</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the maximum amount of future contingent consideration (undiscounted) that we could be required to pay in connection with the completed acquisitions of Avitide, Inc. ("Avitide") in September 2021 and FlexBiosys, Inc. ("FlexBiosys") in April 2023, was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">125.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million over a three-year earnout period and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million over a two-year earnout period, respectively. Refer to Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">"Acquisitions" </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in Part II, Item 8, &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial Statements and Supplementary Data&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to our Form 10-K and Note 3, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">"Acquisition of FlexBiosys, Inc.," </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to this report for additional information on the contingent consideration earnouts.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2023, expected results and a change in market inputs used to calculate the discount rate, resulted in a decrease in amounts reported as of September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of the change in the fair value of contingent consideration &#8211; earnouts is included in the following table (amounts in thousands):</span></span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;">&#160;</p><div style="font-size:10pt;font-family:Times New Roman;">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:77.483%;"></td>
        <td style="width:2.194%;"></td>
        <td style="width:1%;"></td>
        <td style="width:18.322999999999997%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">65,509</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition date fair value of contingent consideration earnout</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,632</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Payment of contingent consideration earnout</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,527</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in fair value of contingent consideration earnouts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31,266</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26,348</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The recurring Level 3 fair value measurement of our contingent consideration earnout that we expect to be required to settle our 2023, 2024 and 2025 contingent consideration obligations for Avitide and FlexBiosys include the following significant unobservable inputs (amounts in thousands, except percent data):</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:18.14%;"></td>
        <td style="width:1.7%;"></td>
        <td style="width:1.06%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.32%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:16.04%;"></td>
        <td style="width:1.7%;"></td>
        <td style="width:11.7%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:13%;"></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contingent Consideration Earnout</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="3" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Fair Value as of<br/>&#160;September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Valuation Technique</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable Input</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Range</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted Average</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability of</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Success</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Commercialization-based payments</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">19,383</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Monte Carlo<br/>Simulation</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">7.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">7.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Volatility</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">24.6</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">21.7</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue and Volume-<br/>based payments</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,460</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Monte Carlo<br/>Simulation</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue &amp; Volume<br/>Discount Rate</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">5.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">9.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8.2</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">7.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability of<br/>&#160;Success</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Manufacturing line expansions</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">5,505</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability-weighted present value</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><div style="margin-left:3.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.447919145106397%;">(1)</span><div style="width:100%;display:inline;"><span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;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;min-width:fit-content;">Fair Value Measured on a Nonrecurring Basis</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the three and nine months ended September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, there were no re-measurements to the fair value of financial assets and liabilities that are measured at fair value on a nonrecurring basis.</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_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<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_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>22
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018609936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisition of FlexBiosys, Inc<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination and Asset Acquisition [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_BusinessCombinationDisclosureTextBlock', window );">Acquisition of FlexBiosys, Inc.</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">3.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition of FlexBiosys, Inc.</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">April 17, 2023</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the Company completed its acquisition of all of the outstanding equity interests in FlexBiosys, pursuant to an Equity Purchase Agreement ("EPA") with FlexBiosys, TSAP Holdings Inc. ("NJ Seller"), Gayle Tarry and Stanley Tarry, as individuals (collectively with NJ Seller, the "Sellers"), and Stanley Tarry, in his capacity as the representative of the Sellers (the "FlexBiosys Acquisition").</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">FlexBiosys, which is headquartered in Branchburg, New Jersey, offers expert design and custom manufacturing of single-use bioprocessing products and a comprehensive range of products that include bioprocessing bags, bottles, and tubing assemblies. These products will complement and expand our fluid management portfolio of offerings.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Consideration transferred</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The FlexBiosys Acquisition was accounted for as a purchase of a business under ASC 805, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">"Business Combinations," </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">and the Company engaged a third-party valuation firm to assist with the valuation of FlexBiosys. Under the terms of the EPA, all outstanding equity interests of FlexBiosys were acquired for consideration with a value totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">41.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The FlexBiosys Acquisition was funded through payment of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, which includes $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million deposited in escrow for future payments, the issuance of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31,415</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> unregistered shares of the Company's common stock totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and contingent consideration with fair value of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under the acquisition method of accounting, the assets acquired and liabilities assumed of FlexBiosys were recorded as of the acquisition date, at their respective fair values, and consolidated with those of the Company. The fair value of the net assets acquired is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, the fair value of the intangible assets acquired is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12.6</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and the residual goodwill is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The estimated consideration and preliminary purchase price information has been prepared using a preliminary valuation. Acquisition-related costs are not included as a component of consideration transferred but are expensed in the periods in which costs are incurred. The Company has incurred $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of transaction and integration costs associated with the FlexBiosys Acquisition from the date of acquisition to </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> with $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of the transaction and integration costs incurred during the three months ended September 30, 2023. The transaction costs are</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in operating expenses in the consolidated statements of comprehensive income for the three and nine months ended September 30, 2023.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fair Value of Net Assets Acquired</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preliminary allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date. As of September 30, 2023, the purchase accounting for this acquisition had not been finalized. As additional information becomes available, the Company may further revise its preliminary purchase price allocation during the remainder of the measurement period. Besides tax implications of the purchase price allocation, the final allocation may result in changes to other assets and liabilities.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The components and estimated allocation of the purchase price consist of the following (amounts in thousands):</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.016%;"></td>
        <td style="width:1.935%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.049%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,090</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">683</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">667</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prepaid expenses and other current assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property and equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12,034</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease right of use asset</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,537</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,530</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Developed technology</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9,860</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademark and tradename</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-competition agreements</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">220</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,321</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other long-term assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts payable</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">136</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">314</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">39</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability, long-term</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,498</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair value of net assets acquired</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">41,030</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the third quarter of 2023, the Company recorded an immaterial net working capital adjustment related to the FlexBiosys Acquisition, which is included in goodwill in the table above.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Acquired Goodwill</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The goodwill of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million represents future economic benefits expected to arise from anticipated synergies from the integration of FlexBiosys into the Company. These synergies include operating efficiencies and strategic benefits projected to be achieved as a result of the FlexBiosys Acquisition. </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Substantially all of the goodwill recorded is expected to be deductible for income tax purposes.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Intangible Assets</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table sets forth the components of the identified intangible assets associated with the FlexBiosys Acquisition and their estimated useful lives:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:53.912%;"></td>
        <td style="width:1.821%;"></td>
        <td style="width:19.892%;"></td>
        <td style="width:1.821%;"></td>
        <td style="width:1%;"></td>
        <td style="width:20.554%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Useful life</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Arial;min-width:fit-content;"> </span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12 years</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,530</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Developed technology</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16 years</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9,860</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademark and tradename</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4 years</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-competition agreements</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5 years</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">220</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12,640</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br><br>Reference 2: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018321984">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring Plan<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [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_RestructuringAndRelatedActivitiesDisclosureTextBlock', window );">Restructuring Plan</a></td>
<td class="text"><div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">4.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Plan</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As previously disclosed, in July 2023 the Board of Directors authorized the Company's management team to undertake restructuring activities to simplify and streamline our organization and strengthen the overall effectiveness of our operations (the</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">"Restructuring Plan"). In addition to the initial streamlining and re-balancing efforts contemplated in July, the Company is undertaking further restructuring activities (collectively, the "Restructuring Plan") which include consolidating a portion of our manufacturing operations between certain U.S. locations, discontinuing the sale of certain product SKUs, and evaluating raw materials and components secured during the 2020-2022 COVID-19 pandemic period (the "COVID-19 Period") to meet increasing demand during a challenging supply chain environment in the industry. These activities are expected to be substantially completed by the end of 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company recorded pre-tax costs of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three and nine months ended September 30, 2023, related to the Restructuring Plan and for the full year of 2023 the Company expects to record charges of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, with the remaining costs in the fourth quarter related to remaining severance and employee-related costs. Approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">21</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million will be non-cash, relating primarily to an inventory write-off to adjust inventory to net realizable value and accelerated depreciation on equipment related to the shutdown of manufacturing facilities and production lines, the remaining costs will be cash expenses, primarily related to severance and employee-related costs.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company recorded pre-tax costs of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three and nine months ended September 30, 2023 related to the Restructuring Plan and for the full year of 2023 the Company expects to record charges of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the charges related to restructuring activities by type of cost:</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:27.9%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.74%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.52%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.42%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.84%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three and Nine Months Ended September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Severance &amp; Employee-Related Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Inventory Write-Off</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Accelerated Depreciation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Facility and Other Exit Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,654</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,788</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">84</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">22,711</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,142</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">27</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">97</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,266</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,830</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,816</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">181</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Severance and employee-related costs under the Restructuring Plan are associated with actual headcount reductions. Costs incurred include cash severance and non-cash severance, including other termination benefits. Severance and other termination benefit packages are based on established benefit arrangements or local statutory requirements and we recognized the contractual component of these benefits when payment was probable and could be reasonably estimated.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The inventory write-off includes the impact of the Company discontinuing the sale of certain product SKUs and the impact of having proactively secured materials during the COVID-19 Period to meet accelerated demand during a challenging supply chain environment in the industry. Where demand has reduced, finished goods and raw materials, whose value exceeded the projected requirements to be used before reaching their expiration date, were written down to their realizable value. The Restructuring Plan also includes the closing of manufacturing facilities and production lines, which included inventory that could not be repurposed.</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-cash charges for accelerated depreciation were recognized on long-lived assets that were taken out of service before the end of their normal service due to the shutdown of manufacturing facilities and production lines, in which case depreciation estimates were revised to reflect the use of the assets over their shortened useful life.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The restructuring accrual is included in accrued liabilities in the condensed consolidated balance sheet as of September 30, 2023 and the balance is expected to be paid by the end of 2023. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity related to the Restructuring Plan for the nine months ended September 30, 2023 was as follows (amounts in thousands):</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:32.1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.78%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.84%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Amounts Paid in the Nine Months Ended September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Non-Cash Restructuring Items</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Liability</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Severance &amp; employee-related costs</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,830</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,478</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">214</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">138</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Inventory write-off</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accelerated depreciation</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,816</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,816</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Facility exit and other exit costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">181</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">171</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">10</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,649</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">21,225</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">138</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;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_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<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/2147482017/420-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//420/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_RestructuringAndRelatedActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018442064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_RevenueFromContractWithCustomerTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">5.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue Recognition</span></div></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Disaggregation of Revenue</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenues for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three and nine months ended September 30, 2023 and 2022 were as follows:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:30.686%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">141,156</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">200,708</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">482,910</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">614,668</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Royalty and other income</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">111</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">106</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">141,192</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">200,741</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">483,021</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">614,774</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">When disaggregating revenue, the Company considered all of the economic factors that may affect its revenues. Because substantially all of its revenues are from bioprocessing customers, there are no differences in the nature, timing and uncertainty of the Company&#8217;s revenues and cash flows from any of its product lines. However, given that the Company&#8217;s revenues are generated in different geographic regions, regulatory, economic and geopolitical factors within those regions could impact the nature, timing and uncertainty of the Company&#8217;s revenues and cash flows. In addition, a significant portion of the Company&#8217;s revenue is generated from a small number of customers; therefore, economic factors specific to these customers could impact the nature, timing and uncertainty of the Company&#8217;s revenues and cash flows.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Disaggregated revenue from contracts with customers by geographic region and revenue from significant customers can be found in Note 14, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Segment Reporting,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> included in this report.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For more information regarding our product revenue, see Note 6, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Revenue Recognition&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in Part II, Item 8, &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial Statements and Supplementary Data&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to our Form 10-K.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Contract Balances from Contracts with Customers</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table provides information about receivables and deferred revenue from contracts with customers as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 (amounts in thousands):</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:69.297%;"></td>
        <td style="width:1.004%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.381%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.004%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.312999999999999%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balances from contracts with customers only:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">106,158</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">116,247</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred revenue (included in accrued liabilities and<br/>&#160;&#160;&#160;other noncurrent liabilities in the condensed consolidated <br/>&#160;&#160;&#160;balance sheets)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11,447</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,631</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during periods presented relating to:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The beginning deferred revenue balance</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16,999</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13,390</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of revenue recognition, billings and cash collections results in the accounts receivable and deferred revenue balances on the Company&#8217;s condensed 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_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_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>25
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018395184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill And Other Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Intangible Assets</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">6.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill and Intangible Assets</span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Goodwill</span></p><div style="font-size:12pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table represents the change in the carrying value of goodwill for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 (amounts in thousands):</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.016%;"></td>
        <td style="width:1.935%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.049%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">855,513</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition of FlexBiosys, Inc.</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,355</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Measurement period adjustment &#8211; FlexBiosys</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cumulative translation adjustment</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">582</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">869,252</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During each of the fourth quarters of 2022, 2021 and 2020, the company completed its annual assessments and concluded that goodwill was not impaired in any of those years. The Company has not identified any "triggering" events which indicate an impairment of goodwill in the three and nine months ended September 30, 2023.</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Intangible Assets</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible assets are reviewed for impairment at least annually. There has been </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> impairment of the Company&#8217;s intangible assets for the periods presented.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:12pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net, consisted of the following at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023:</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.471%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.139999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.139999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.9%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.002%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.681%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br/>Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br/>Average<br/>Useful Life<br/>(in years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite-lived intangible assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Technology &#8211; developed</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">200,188</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">40,093</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">160,095</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Patents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">255,113</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">78,929</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">176,184</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,709</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,653</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,056</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangibles</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,026</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,332</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">694</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total finite-lived intangible assets</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">466,276</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">123,247</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">343,029</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible asset:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total intangible assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">466,976</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">123,247</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">343,729</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net, consisted of the following at December 31, 2022:</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.735%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.048%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.048%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.054%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.088000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br/>Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br/>Average<br/>Useful Life<br/>(in years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite-lived intangible assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Technology &#8211; developed</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">190,463</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30,992</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">159,471</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Patents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">252,934</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">66,559</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">186,375</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,682</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,319</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,363</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangibles</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,811</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,044</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">767</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total finite-lived intangible assets</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">454,130</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101,154</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">352,976</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible asset:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total intangible assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">454,830</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101,154</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">353,676</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization expense for finite-lived intangible assets was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the three months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, and $</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19.8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the nine months ended September 30,</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023, the Company expects to record the following amortization expense in future periods (amounts in thousands): </span></span><span style=""></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.288%;"></td>
        <td style="width:1.941%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.771%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">For the Years Ended December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Expense</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 (remaining three months)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,504</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2024</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,558</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2025</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,220</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2026</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,192</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2027</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,159</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2028 and thereafter</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">218,396</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">343,029</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Goodwill And Other Intangible Assets Disclosure [Abstract]</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;">rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//350/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018366880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Balance Sheet Detail<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_DisclosureTextBlockAbstract', window );"><strong>Disclosure Text Block [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_SupplementalBalanceSheetDisclosuresTextBlock', window );">Consolidated Balance Sheet Detail</a></td>
<td class="text"><div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">7.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Consolidated Balance Sheet Detail</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;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;min-width:fit-content;">Inventories, net</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories, net consists of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:71.125%;"></td>
        <td style="width:1.722%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.715%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.722%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.715%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Raw materials</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">128,894</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">149,438</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Work-in-process</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,630</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,183</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finished products</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">76,848</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">82,656</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total inventories, net</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">211,372</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">238,277</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Property, Plant and Equipment</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment consist of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:70.077%;"></td>
        <td style="width:1.533%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.45%;"></td>
        <td style="width:1%;"></td>
        <td style="width:3.491%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.45%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Land</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">950</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,003</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Buildings</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,637</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,599</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leasehold improvements</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">124,925</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">115,672</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Equipment</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">111,625</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">94,613</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Furniture, fixtures and office equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8,786</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8,307</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Computer hardware and software</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35,359</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,813</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Construction in progress</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">37,679</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31,553</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">410</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">420</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total property, plant and equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">321,371</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">282,980</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Less &#8211; Accumulated depreciation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">119,753</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">92,307</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total property, plant and equipment, net</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">201,618</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">190,673</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;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-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Accrued Liabilities</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities consist of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:62.175%;"></td>
        <td style="width:12.815%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.754000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.502%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.754000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Employee compensation</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13,727</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33,522</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred revenue</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10,879</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,283</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes payable</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,446</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,459</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15,491</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15,856</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total accrued liabilities</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42,543</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">71,120</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and 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 210<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//210/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_SupplementalBalanceSheetDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018389024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Convertible Senior Notes<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_LongTermDebtTextBlock', window );">Convertible Senior Notes</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">8.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Convertible Senior Notes </span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">0.375% Convertible Senior Notes due 2024</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On July 19, 2019, the Company issued $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">287.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal pursuant to the 2019 Notes, which includes the underwriters&#8217; exercise in full of an option to purchase an additional $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">37.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal amount of 2019 Notes (the &#8220;Notes Offering&#8221;). The net proceeds of the Notes Offering, after deducting underwriting discounts and commissions and other related offering expenses payable by the Company, were approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">278.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The 2019 Notes are senior, unsecured obligations of the Company, and bear interest at a rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.375</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per year. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020.</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> The 2019 Notes will mature on </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">July 15, 2024</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, unless earlier repurchased or converted in accordance with their terms.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the third quarter of 2023, the closing price of the Company&#8217;s common stock exceeded </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">130</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the conversion price of the 2019 Notes for more than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> trading days of the last </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> consecutive trading days of the quarter. As a result, the 2019 Notes are convertible at the option of the holders of the 2019 Notes during the fourth quarter of 2023, the quarter immediately following the quarter when the conditions are met, as stated in the terms of the 2019 Notes. These conditions have been met each quarter since the third quarter of 2020. As a result, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal amount of the 2019 Notes have been requested for conversion by the note holders since the issuance of the 2019 Notes and all conversions have settled as of September 30, 2023. The conversions resulted in the issuance of a nominal number of shares of the Company&#8217;s common stock to the note holders. Because the 2019 Notes mature within one year of the report date, the Company classifies the carrying value of the 2019 Notes as current liabilities on the Company&#8217;s condensed consolidated balance sheets at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The net carrying value of the liability component of the 2019 Notes is as follows:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:67.161%;"></td>
        <td style="width:1.622%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.797%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.622%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.797%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,<br/>2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,<br/>2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.375% Convertible Senior Notes due 2024:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Principal amount</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">287,437</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">287,470</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unamortized debt issuance costs</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,481</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,855</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Net carrying amount</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">285,956</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">284,615</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table sets forth total interest expense recognized related to the 2019 Notes:</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.908%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.427%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.658%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.427%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.658%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contractual interest expense</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">269</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">270</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">808</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">809</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">459</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">455</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,373</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,360</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">728</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">725</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,181</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,169</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effective interest rate of the liability component</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At September 30, 2023 and December 31, 2022, the carrying value of the 2019 Notes was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">286.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">284.6</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, net of unamortized discount, and the fair value of the 2019 Notes was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">405.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">452.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The fair value of the 2019 Notes was determined based on the most recent trade activity of the 2019 Notes at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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_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_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-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> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//470/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_LongTermDebtTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018476464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stockholders' Equity</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">9.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stockholders&#8217; Equity </span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Stock Option and Incentive Plans</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under the Company&#8217;s current 2018 Stock Option and Incentive Plan (the &#8220;2018 Plan&#8221;), the number of shares of the Company&#8217;s common stock that were reserved and available for issuance is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,778,000</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">plus the number of shares of common stock that were available for issuance under the Company&#8217;s previous equity plans. The shares of common stock underlying any awards under the 2018 Plan and previous equity plans (together, the &#8220;Plans&#8221;) that are forfeited, canceled or otherwise terminated (other than by</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">exercise) </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">shall be added back to the shares of stock available for issuance under the 2018 Plan. At September 30, 2023, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,704,118</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares were available for future grants under the 2018 Plan.</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Stock Issued for Earnout Payment</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In May 2023, the Company issued </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42,621</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of its common stock to former securityholders of Avitide to satisfy the contingent consideration obligation established under the Agreement and Plan of Merger and Reorganization (the "Avitide Agreement") which the Company entered into as part of the acquisition of Avitide in September 2021. See Note 4, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">"Acquisitions", </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in Part II, Item 8 </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">"Financial Statements and Supplemental Data" </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">to our Form 10-K, for additional information on the acquisition of Avitide and the contingent consideration. The shares represent </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">50</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the earnout consideration earned in the First Earnout Year (as defined in the Avitide Agreement).</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Stock-Based Compensation</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table presents stock-based compensation expense in the Company&#8217;s condensed consolidated statements of comprehensive income:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:55.172%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">393</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">610</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,506</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,847</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">534</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,095</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,955</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,280</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,010</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15,509</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17,252</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total stock-based compensation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,373</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,154</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,110</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">21,054</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock Options</span></p><div style="font-size:12pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information regarding option activity for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 under the Plans is summarized below:</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.18%;"></td>
        <td style="width:1.001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.674%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.221%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.893%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.674%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.221%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.133%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br/>average<br/>exercise<br/>price</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted-<br/>Average<br/>Remaining<br/>Contractual<br/>Term<br/>(in Years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Aggregate<br/>Intrinsic<br/>Value<br/>(in Thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options outstanding at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">609,965</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">71.74</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Granted</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">66,069</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">173.08</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exercised</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22,872</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15.52</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeited/expired/cancelled</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,000</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">199.71</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options outstanding at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">651,162</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">83.60</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options exercisable at September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">371,782</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">61.46</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested and expected to vest at September 30, 2023</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">637,673</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">83.18</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5.73</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">53,173</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:3pt;border-bottom:0.75pt solid;margin-right:83.333%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.635986778229898%;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested options as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div></div><p style="margin-left:3.333%;text-indent:0;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-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aggregate intrinsic value in the table above represents the total pre-tax intrinsic value (the difference between the closing price of the common stock on September 30, 2023, the last business day of the third quarter of 2023, of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">159.01</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> per share and the exercise price of each in-the-money option) that would have been received by the option holders had all option holders exercised their options on September 30, 2023. The aggregate intrinsic value of stock options exercised during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9.8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The weighted average grant date fair value of options granted during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">85.70</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">76.64</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock Units</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The fair value of stock units is calculated using the closing price of the Company&#8217;s common stock on the date of grant. The Company recognizes expense on awards with service-based vesting over the employee&#8217;s requisite service period on a straight-line basis. The Company recognizes expense on performance-based awards over the vesting period based on the probability that the performance metrics will be achieved. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 under the Plans is summarized below:</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:65.96%;"></td>
        <td style="width:1.121%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.129999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.601%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.59%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.601%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted Average<br/>Grant Date<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unvested at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">531,034</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">142.57</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awarded</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">175,475</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">174.86</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">173,714</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">118.70</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeited/cancelled</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">53,920</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">179.53</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unvested at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">478,875</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">188.41</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested and expected to vest at September 30, 2023</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">411,646</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">153.79</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:6.667%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.571084182443509%;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested stock units as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees. </span></div></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aggregate intrinsic value of stock units vested during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">32.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">40.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The weighted average grant date fair value of stock units granted during the nine months ended September 30, 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">174.86</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">191.55</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023, there was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">66.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of total unrecognized compensation cost related to unvested share-based awards. This cost is expected to be recognized over a weighted average remaining requisite service period of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2.88</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> years. The Company expects </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,156,681</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> unvested options and stock units 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">five years</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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/2147481062/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/2147481062/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/2147481004/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>29
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018362064">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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"><div style="text-indent:0;display:flex;margin-top:10pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">10.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Commitments and Contingencies </span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Collaboration Agreements</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company licenses certain technologies that are, or may be, incorporated into its technology under several agreements and also has entered into several clinical research agreements that require the Company to fund certain research projects. Generally, the license agreements require the Company to pay annual maintenance fees and royalties on product sales once a product has been established using the technologies. Research and development expenses associated with license agreements were immaterial amounts for the three and nine months ended September 30, 2023 and 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In June 2018, the Company secured an agreement with Navigo Proteins GmbH (&#8220;Navigo&#8221;) for the exclusive co-development of multiple affinity ligands for which the Company holds commercialization rights. The Company is manufacturing and supplying the first of these ligands, NGL-Impact</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, exclusively to Purolite Life Sciences, an Ecolab Inc. company (&#8220;Purolite&#8221;), who is pairing the Company&#8217;s high-performance ligand with Purolite&#8217;s agarose jetting base bead technology used in their Jetted A50 Protein A resin product. The Company also signed a long-term supply agreement with Purolite for NGL-Impact and other potential additional affinity ligands that may advance from the Company&#8217;s Navigo collaboration. In September 2020, the Company and Navigo successfully completed co-development of an affinity ligand targeting the SARS-CoV-2 spike protein, to be utilized in the purification of vaccines for the COVID-19 pandemic, including emerging variants of the SARS-CoV-2 coronavirus. The Company has proceeded with scaling up and manufacturing this ligand and the development and validation of the related affinity chromatography resin, which is marketed by the Company. In September 2021, the Company and Navigo successfully completed co-development of a novel affinity ligand that addresses aggregation issues associated with pH sensitive antibodies and Fc-fusion proteins. The Company is manufacturing and supplying this ligand, NGL-Impact</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> HipH, to Purolite. The Navigo and Purolite agreements are supportive of the Company&#8217;s strategy to secure and reinforce the Company&#8217;s proteins business. The Company made royalty payments to Navigo of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three months ended</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, and payments of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 and 2022, respectively.</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Legal Proceedings</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">From time to time, in the normal course of its operations, the Company is subject to litigation matters and claims relating to employee relations, business practices and patent infringement. Litigation can be expensive and disruptive to normal business operations. Moreover, the results of complex legal proceedings are difficult to predict, and the Company's view of these matters may change in the future as the litigation and events related thereto unfold. The Company expenses legal fees as incurred. The Company records a provision for contingent losses when it is both probably that a liability has been incurred and the amount of the loss can be reasonably estimated. An unfavorable outcome to any legal matter, if material, could have an adverse effect on the Company's operations or its financial results.</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/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 2: 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 3: 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/2147480327/954-440-50-1<br><br>Reference 4: 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 5: 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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018398608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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"><div style="text-indent:0;display:flex;margin-top:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">11.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Taxes</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2023, the Company recorded an income tax benefit of $</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and an income tax provision of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5.8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The Company&#8217;s effective tax rate for the three and nine months ended September 30, 2023 was </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">56.2</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%)</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8.0</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, compared to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14.9</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% for the corresponding periods in the prior year.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On August 16, 2022, the United States enacted the Inflation Reduction Act of 2022 ("Inflation Reduction Act"), which, among other things, implements a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% alternative minimum tax on global adjusted financial statement income of certain large corporations, a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% excise tax on net stock repurchases and several tax incentives to promote clean energy and was effective beginning in 2023. We evaluated the provisions of the Inflation Reduction Act and no provision had a material effect on our consolidated financial position or results of operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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 taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 2: 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 3: 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 4: 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 5: 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 6: 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/2147482526/740-270-50-1<br><br>Reference 7: 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 8: 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 9: 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 10: 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>31
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018395184">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_EarningsPerShareBasicAbstract', window );"><strong>Earnings Per Share, Basic [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"><div style="text-indent:0;display:flex;margin-top:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">12.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Earnings Per Share</span></div></div><div style="font-size:12pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of basic and diluted weighted average shares outstanding is as follows:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:45.72%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.14%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except per share data)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Numerator:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">18,172</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">40,405</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">67,065</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">137,230</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Effect of dilutive securities:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Charges associated with convertible debt instruments, net of tax</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">387</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Numerator for diluted earnings per share &#8211; net income available to common stockholders after the effect of dilutive securities</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">18,172</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">40,405</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">67,065</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">137,617</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Denominator:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted average shares used in computing net income per share &#8211; basic</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,766</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,498</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,688</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,432</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Effect of dilutive shares:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Options and stock units</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">439</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">673</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">469</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">663</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Convertible Senior Notes</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">735</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,131</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">776</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,501</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Dilutive effect of unvested performance stock units</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">-</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">-</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Dilutive potential common shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,174</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,806</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,245</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2,166</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Denominator for diluted earnings per share &#8211; adjusted weighted average shares used in computing net income per share &#8211; diluted</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">56,940</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">57,304</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">56,933</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">57,598</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnings per share:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Basic</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.33</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.73</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.20</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2.48</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Diluted</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.32</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.71</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.18</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2.39</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the three and nine months ended September 30, 2023, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">301,404</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">328,179</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively, of the Company&#8217;s common stock were excluded from the calculation of diluted EPS because the exercise prices of the stock options were greater than or equal to the average price of the common shares and were therefore anti-dilutive. Comparatively, for the three and nine months ended September 30, 2022, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">112,179</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">149,187</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively, were considered anti-dilutive.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In July 2019, the Company issued $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">287.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million aggregate principal amount of the 2019 Notes. As provided by the terms of the indenture underlying the 2019 Notes, prior to March 4, 2022, conversion of the 2019 Notes could have been settled in cash, shares of the Company&#8217;s common stock or a combination thereof, at the Company&#8217;s election. On March 4, 2022, we entered into the Second Supplemental Indenture for the 2019 Notes, which irrevocably elected to settle the conversion of the 2019 Notes using a combination of cash and shares of the Company&#8217;s common stock, settling the par value of the 2019 Notes in cash and any excess conversion premium in shares.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As provided by the terms of the Second Supplemental Indenture underlying the 2019 Notes, the Company irrevocably elected to settle the conversion obligation for the 2019 Notes in a combination of cash and shares of the Company's common stock. This means the Company will settle the par value of the 2019 Notes in cash and any excess conversion premium in shares. The Company adopted ASU 2020-06 effective January 1, 2022. Under ASU 2020-06, the Company is required to reflect the dilutive effect of the convertible securities by application of the "if-converted" method, which means the denominator of the EPS calculation would include the total number of shares assuming the 2019 Notes had been fully converted at the beginning of the period. Prior to March 4, 2022, the Company had the choice to settle the conversion of the 2019 Notes in cash, stock or a combination of the two. Therefore, from January 1, 2022 (the date the Company adopted ASU 2020-06) to March 4, 2022, the Company included </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,474,429</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares in the denominator of the EPS calculation, applying the if converted method. Subsequent to March 4, 2022, after the Second Supplemental Indenture became effective, the Company irrevocably elected to settle the conversion obligation for the 2019 Notes in a combination of cash and shares of the Company's common stock, and from March 5, 2022 forward, only the excess premium will be settled with shares. Under the if-converted method of calculating dilutive shares, the Company was also required to exclude amortization of debt issuance costs and interest charges applicable to the convertible debt from the numerator of the dilutive EPS calculation for the period from January 1, 2022 to March 4, 2022, as if the interest on convertible debt was never recognized for that period. For the three months ended March 31, 2022, the Company excluded interest charges of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of tax) from the numerator.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prior to the adoption of ASU 2020-06, the Company applied the provisions of ASC 260, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Earnings Per Share,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Subsection 10-45-44, to determine the diluted weighted average shares outstanding as it related to the conversion spread on its convertible notes. Accordingly, the par value of the 2019 Notes was not included in the calculation of diluted income per share, but the dilutive effect of the conversion premium was considered in the calculation of diluted net income per share using the treasury stock method. The dilutive impact of the 2019 Notes was based on the difference between the Company&#8217;s current period average stock price and the conversion price of the 2019 Notes, provided there was a premium. Pursuant to this accounting standard, there was no dilution from the accreted principal of the 2019 Notes. For the three and nine months ended September 30, 2023, the dilutive effect of the conversion premium included in the calculation of diluted earnings was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">735,150</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">776,339</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively. For the three and nine months ended September 30, 2022, the dilutive effect of the conversion premium included in the calculation of diluted earnings was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,130,530</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,500,717</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>32
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022965232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_RelatedPartyTransactionsAbstract', window );"><strong>Related Party Transactions [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_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Party Transactions</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">13.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Related Party Transactions</span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain facilities leased by our subsidiary, Spectrum LifeSciences LLC ("Spectrum") are owned by the Roy T. Eddleman Living Trust (the "Trust"). As of September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the Trust owned greater than </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the Company&#8217;s outstanding shares. Therefore, the Company considers the Trust to be a related party. The lease amounts paid to the Trust prior to the public offering were negotiated in connection with the acquisition of Spectrum. The Company incurred rent expense totaling $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million respectively for each of the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> related to these leases and incurred rent expense of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<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 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-6<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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-1<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 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<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 1<br> -Subparagraph (SX 210.6-07(2)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//850/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-6<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<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/2147483326/850-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-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_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018491824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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 Reporting</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">14.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Segment Reporting </span></div></div><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating segments are components of an enterprise that engage in business activities for which discrete financial information is available and regularly reviewed by the chief operating decision maker ("CODM") in deciding how to allocate resources and assess performance. Our Chief Executive Officer ("CEO") has been identified as the CODM.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company views its operations, makes decisions regarding how to allocate resources and manages its business as </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">one</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating segment and one reportable segment. Our CODM evaluates financial information on a consolidated basis. As a result, the required financial segment information can be found in the consolidated condensed financial statements of the Company disclosed herein.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:12pt;font-family:Times New Roman;"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table represents the Company&#8217;s total revenue by geographic area (based on the location of the customer):</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:60%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:6.068%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.676%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.175%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:5.082000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.676%;"></td>
        <td style="width:1%;"></td>
        <td style="width:6.309%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue by customers' geographic locations:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">North America</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">49</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">44</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Europe</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">38</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">APAC/Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">23</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Concentrations of Credit Risk and Significant Customers</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial instruments that subject the Company to significant concentrations of credit risk primarily consist of cash and cash equivalents, marketable securities and accounts receivable. Per the Company&#8217;s investment policy, cash equivalents and marketable securities are invested in financial instruments with high credit ratings and credit exposure to any one issue, issuer (with the exception of U.S. Treasury obligations) and type of instrument is limited. At September 30, 2023 and December 31, 2022, the Company had no investments associated with foreign exchange contracts, options contracts or other foreign hedging arrangements.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Concentration of credit risk with respect to accounts receivable is limited to customers to whom the Company makes significant sales. While a reserve for the potential write-off of accounts receivable is maintained, the Company has not written off any significant accounts to date. To control credit risk, the Company performs regular credit evaluations of its customers&#8217; financial condition.</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">There was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> revenue from customers that represented </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% or more of the Company's total revenue for the three and nine months ended September 30, 2023 and 2022.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">No accounts receivable balance from a specific customer represented </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% or more of the Company's total trade accounts receivable at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Significant accounts receivable balances representing </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% or more of the Company's accounts receivable and royalties at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> came from our accounts receivable balance outstanding with Purolite, an Ecolab Inc. company, which was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12.7</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of our total trade accounts receivable balance.</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_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/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 2: 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 3: 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 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<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 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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>34
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018336432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Event<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Event</a></td>
<td class="text"><div style="text-indent:0;display:flex;margin-top:12pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;">15.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Subsequent Event</span></div></div><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Acquisition of Metenova Holding AB</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">October 2, 2023</span></span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, Repligen Sweden AB, a subsidiary of the Company completed its acquisition of all of the outstanding equity interests in Metenova Holding AB ("Metenova"), pursuant to a Share Sale and Purchase Agreement with, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">inter alia, </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Metenova for approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">173</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash and the Company's equity. Metenova will further strengthen our fluid management portfolio with its magnetic mixing and drive train technologies that are widely used by global biopharmaceutical companies and contract development and manufacturing organizations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company will account for the acquisition of Metenova as a purchase of business under the acquisition method of accounting and has engaged a third-party valuation firm to assist with the valuation of the business acquired. The estimated purchase price allocation for the acquisition of Metenova will be included in the Annual Report on Form 10-K for the year ended December 31, 2023.</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_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//855/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<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/2147483399/855-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_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020194592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">Basis of presentation</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Basis of Presentation</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The condensed consolidated financial statements included herein have been prepared by Repligen Corporation (the &#8220;Company&#8221;, &#8220;Repligen&#8221;, &#8220;our&#8221; or &#8220;we&#8221;) in accordance with generally accepted accounting principles accepted in the United States (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the United States Securities and Exchange Commission (&#8220;SEC&#8221;), for Quarterly Reports on Form 10-Q and Article 10 of Regulation S-X and do not include all of the information and footnote disclosures required by GAAP. These condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and accompanying notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended December 31, 2022, which was filed with the SEC on February 22, 2023 (&#8220;Form 10-K&#8221;).</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. The business and economic uncertainty resulting from government-mandated actions in response to the COVID-19 pandemic, including all subsequent variants of the SARS-CoV-2 coronavirus ("COVID-19"), global geopolitical conflicts, supply chain challenges, cost pressure and the overall effects of the current high inflation environment on customers' purchasing patterns has made such estimates more difficult to calculate. Accordingly, actual results could differ from those estimates.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The condensed consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries.  All significant intercompany accounts and transactions have been eliminated in consolidation.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company made no material changes in the application of its significant accounting policies that were disclosed in its Form 10-K. In the opinion of the Company, the accompanying unaudited condensed consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of its financial position as of September 30, 2023, its results of operations for the three and nine months ended September 30, 2023 and 2022 and cash flows for the three and nine months ended September 30, 2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </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_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent Accounting Standards Updates</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Recent Accounting Standards Updates</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider the applicability and impact of all Accounting Standards Updates ("ASU" or "ASUs") on the Company&#8217;s condensed consolidated financial statements. As of September 30, 2023, there were no accounting standards or ASUs recently issued or effective during the fiscal year that would have a material effect on the Company's condensed consolidated financial statements or disclosures.</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_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019957296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock', window );">Summary of Cash, Cash Equivalents and Marketable Securities Held to Maturity</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the Company's cash, cash equivalents and marketable securities held to maturity as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022 (amounts in thousands):</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:46.843%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.784%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.504999999999999%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized<br/>&#160;Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Gains</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Losses</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and money market funds</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash and cash equivalents</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">630,779</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">As of December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized <br/>Cost</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Gains</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Unrealized<br/>Losses</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and money market funds</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash and cash equivalents</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">523,458</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Marketable securities held to maturity:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">U.S. treasury bills &#8211; short-term</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,299</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,323</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total cash, cash equivalents and marketable securities</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">623,757</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">623,781</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;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_InvestmentsClassifiedByContractualMaturityDateTableTextBlock', window );">Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The amortized cost and the fair value of the Company's held to maturity securities by contractual maturity at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022 is summarized below:</span><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:57.008%;"></td>
        <td style="width:2.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.440999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.440999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.703%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortized<br/>&#160;Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Maturity of one year or less</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,299</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,323</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,299</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100,323</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</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_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock', window );">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial assets and financial liabilities measured at fair value on a recurring basis consist of the following as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 and December 31, 2022 (amounts in thousands):</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:46.501%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.279%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.096%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">As of September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 2</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 3</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Money market accounts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">389,473</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">389,473</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Liabilities:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Short-term contingent consideration</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">12,589</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">12,589</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Long-term contingent consideration</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,759</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,759</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">As of December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 2</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Level 3</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Money market accounts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">343,929</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">343,929</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Liabilities:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Short-term contingent consideration</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,950</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13,950</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Long-term contingent consideration</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">51,559</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">51,559</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;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_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of the change in the fair value of contingent consideration &#8211; earnouts is included in the following table (amounts in thousands):</span>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:77.483%;"></td>
        <td style="width:2.194%;"></td>
        <td style="width:1%;"></td>
        <td style="width:18.322999999999997%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">65,509</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition date fair value of contingent consideration earnout</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,632</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Payment of contingent consideration earnout</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,527</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in fair value of contingent consideration earnouts</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31,266</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26,348</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock', window );">Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The recurring Level 3 fair value measurement of our contingent consideration earnout that we expect to be required to settle our 2023, 2024 and 2025 contingent consideration obligations for Avitide and FlexBiosys include the following significant unobservable inputs (amounts in thousands, except percent data):</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:18.14%;"></td>
        <td style="width:1.7%;"></td>
        <td style="width:1.06%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.32%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:16.04%;"></td>
        <td style="width:1.7%;"></td>
        <td style="width:11.7%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:13%;"></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contingent Consideration Earnout</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="3" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Fair Value as of<br/>&#160;September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Valuation Technique</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable Input</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Range</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted Average</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability of</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Success</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Commercialization-based payments</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">19,383</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Monte Carlo<br/>Simulation</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">7.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">7.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Volatility</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">13.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">24.6</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">21.7</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue and Volume-<br/>based payments</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,460</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Monte Carlo<br/>Simulation</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue &amp; Volume<br/>Discount Rate</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">5.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">9.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8.2</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">7.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.5</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability of<br/>&#160;Success</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Manufacturing line expansions</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">5,505</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Probability-weighted present value</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnout Discount Rate</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.1</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%-</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.4</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">6.3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.</span><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash, cash equivalents, and marketable securities held to 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;">rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.</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> -Subparagraph (bbb)<br> -SubTopic 10<br> -Topic 820<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock</td>
</tr>
<tr>
<td style="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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.</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> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 820<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<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_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentsClassifiedByContractualMaturityDateTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 maturities of an entity's investments as well as any other information pertinent to the investments.</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_InvestmentsClassifiedByContractualMaturityDateTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</p></div>
<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 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018512432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisition of FlexBiosys, Inc (Tables) - FlexBiosys<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The components and estimated allocation of the purchase price consist of the following (amounts in thousands):</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.016%;"></td>
        <td style="width:1.935%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.049%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash and cash equivalents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,090</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">683</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">667</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Prepaid expenses and other current assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property and equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12,034</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease right of use asset</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,537</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,530</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Developed technology</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9,860</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademark and tradename</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-competition agreements</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">220</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,321</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other long-term assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts payable</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">136</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">314</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">39</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating lease liability, long-term</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,498</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair value of net assets acquired</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">41,030</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;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 );">Schedule of Identified Intangible Assets and Estimated Useful Lives</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table sets forth the components of the identified intangible assets associated with the FlexBiosys Acquisition and their estimated useful lives:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:53.912%;"></td>
        <td style="width:1.821%;"></td>
        <td style="width:19.892%;"></td>
        <td style="width:1.821%;"></td>
        <td style="width:1%;"></td>
        <td style="width:20.554%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Useful life</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-weight:normal;font-size:10pt;font-family:Arial;min-width:fit-content;"> </span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12 years</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,530</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Developed technology</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16 years</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9,860</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademark and tradename</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4 years</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Non-competition agreements</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5 years</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">220</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12,640</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>38
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022604416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring Plan (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [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_ScheduleOfRestructuringReserveByTypeOfCostTextBlock', window );">Summary of Restructuring Activities by Type of Cost</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the charges related to restructuring activities by type of cost:</span></p><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:27.9%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.74%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.52%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.42%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.84%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Three and Nine Months Ended September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Severance &amp; Employee-Related Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Inventory Write-Off</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Accelerated Depreciation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Facility and Other Exit Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,654</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,788</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">84</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">22,711</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,142</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">27</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">97</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">1,266</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,830</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,816</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">181</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </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_ScheduleOfRestructuringAndRelatedCostsTextBlock', window );">Summary of Activity Related to Restructuring Plan</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Activity related to the Restructuring Plan for the nine months ended September 30, 2023 was as follows (amounts in thousands):</span><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:32.1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.78%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.84%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.28%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.5%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:7pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Amounts Paid in the Nine Months Ended September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Non-Cash Restructuring Items</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:7.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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">Restructuring Liability</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Severance &amp; employee-related costs</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,830</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,478</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">214</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">138</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Inventory write-off</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">17,185</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accelerated depreciation</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,816</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">3,816</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Facility exit and other exit costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">181</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">171</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">10</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">24,012</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">2,649</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">21,225</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">138</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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:Arial;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_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs incurred for restructuring including, but not limited to, exit and disposal activities, remediation, implementation, integration, asset impairment, and charges against earnings from the write-down of 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> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 5.P.3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_ScheduleOfRestructuringAndRelatedCostsTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfRestructuringReserveByTypeOfCostTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in 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 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_ScheduleOfRestructuringReserveByTypeOfCostTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020196176">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenues for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three and nine months ended September 30, 2023 and 2022 were as follows:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:30.686%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.705%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.624%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">141,156</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">200,708</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">482,910</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">614,668</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Royalty and other income</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">111</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">106</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">141,192</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">200,741</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">483,021</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">614,774</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;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_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Summary of Receivables and Deferred Revenue from Contracts with Customers</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table provides information about receivables and deferred revenue from contracts with customers as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 (amounts in thousands):</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:69.297%;"></td>
        <td style="width:1.004%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.381%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.004%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.312999999999999%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balances from contracts with customers only:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">106,158</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">116,247</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred revenue (included in accrued liabilities and<br/>&#160;&#160;&#160;other noncurrent liabilities in the condensed consolidated <br/>&#160;&#160;&#160;balance sheets)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11,447</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,631</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during periods presented relating to:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The beginning deferred revenue balance</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16,999</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13,390</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018547520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill And Other Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Changes in Carrying Value of Goodwill</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table represents the change in the carrying value of goodwill for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 (amounts in thousands):</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.016%;"></td>
        <td style="width:1.935%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.049%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">855,513</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Acquisition of FlexBiosys, Inc.</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14,355</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Measurement period adjustment &#8211; FlexBiosys</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cumulative translation adjustment</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">582</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balance at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">869,252</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Intangible Assets</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net, consisted of the following at </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023:</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.471%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.139999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.139999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.222%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.9%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.002%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.681%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br/>Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br/>Average<br/>Useful Life<br/>(in years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite-lived intangible assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Technology &#8211; developed</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">200,188</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">40,093</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">160,095</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Patents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">255,113</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">78,929</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">176,184</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,709</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,653</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,056</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangibles</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3,026</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,332</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">694</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total finite-lived intangible assets</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">466,276</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">123,247</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">343,029</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible asset:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total intangible assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">466,976</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">123,247</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">343,729</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Intangible assets, net, consisted of the following at December 31, 2022:</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.735%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.048%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.048%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.054%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.088000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Gross<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Accumulated<br/>Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Net<br/>Carrying<br/>Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br/>Average<br/>Useful Life<br/>(in years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite-lived intangible assets:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Technology &#8211; developed</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">190,463</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30,992</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">159,471</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Patents</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">240</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">252,934</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">66,559</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">186,375</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,682</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,319</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,363</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangibles</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,811</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,044</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">767</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total finite-lived intangible assets</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">454,130</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101,154</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">352,976</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Indefinite-lived intangible asset:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Trademarks</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total intangible assets</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">454,830</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">101,154</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">353,676</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock', window );">Schedule of Amortization Expense for Amortized Intangible Assets</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023, the Company expects to record the following amortization expense in future periods (amounts in thousands): </span><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.288%;"></td>
        <td style="width:1.941%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.771%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Estimated</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Amortization</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="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-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">For the Years Ended December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Expense</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 (remaining three months)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7,504</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2024</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,558</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2025</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,220</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2026</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,192</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2027</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,159</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2028 and thereafter</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">218,396</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">343,029</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Goodwill And Other Intangible Assets Disclosure [Abstract]</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;">rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]</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;">rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 2: http://www.xbrl.org/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 3: 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 4: 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> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 5: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-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 (d)<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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 9: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 10: 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 (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1A<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094018320000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Balance Sheet Detail (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_DisclosureTextBlockAbstract', window );"><strong>Disclosure Text Block [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_ScheduleOfInventoryCurrentTableTextBlock', window );">Inventories</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;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;min-width:fit-content;">Inventories, net</span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories, net consists of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:71.125%;"></td>
        <td style="width:1.722%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.715%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.722%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.715%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Raw materials</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">128,894</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">149,438</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Work-in-process</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,630</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,183</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finished products</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">76,848</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">82,656</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total inventories, net</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">211,372</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">238,277</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;">Property, Plant and Equipment</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment consist of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:70.077%;"></td>
        <td style="width:1.533%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.45%;"></td>
        <td style="width:1%;"></td>
        <td style="width:3.491%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.45%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Land</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">950</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,003</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Buildings</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,637</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,599</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leasehold improvements</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">124,925</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">115,672</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Equipment</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">111,625</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">94,613</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Furniture, fixtures and office equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8,786</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8,307</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Computer hardware and software</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35,359</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29,813</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Construction in progress</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">37,679</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31,553</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">410</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">420</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total property, plant and equipment</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">321,371</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">282,980</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Less &#8211; Accumulated depreciation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">119,753</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">92,307</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total property, plant and equipment, net</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">201,618</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">190,673</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Accrued Liabilities</a></td>
<td class="text"><p style="margin-left:3.333%;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-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Accrued Liabilities</span></p><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued liabilities consist of the following:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:62.175%;"></td>
        <td style="width:12.815%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.754000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.502%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.754000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Employee compensation</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13,727</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33,522</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred revenue</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10,879</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,283</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes payable</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,446</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,459</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15,491</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15,856</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total accrued liabilities</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42,543</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">71,120</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;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_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="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(6)(a))<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(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-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_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022997904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Convertible Senior Notes (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_ConvertibleDebtTableTextBlock', window );">Carrying Value of Convertible Senior Notes</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The net carrying value of the liability component of the 2019 Notes is as follows:</span></p><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:67.161%;"></td>
        <td style="width:1.622%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.797%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.622%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.797%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,<br/>2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">December 31,<br/>2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">0.375% Convertible Senior Notes due 2024:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Principal amount</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">287,437</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">287,470</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unamortized debt issuance costs</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,481</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,855</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Net carrying amount</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">285,956</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">284,615</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_ScheduleOfConvertiableNoteInterestExpense', window );">Schedule of convertiable note interest expense</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table sets forth total interest expense recognized related to the 2019 Notes:</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.908%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.427%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.658%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.427%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.23%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.658%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contractual interest expense</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">269</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">270</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">808</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">809</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization of debt issuance costs</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">459</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">455</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,373</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,360</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">728</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">725</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,181</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,169</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Effective interest rate of the liability component</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.0</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;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_rgen_ScheduleOfConvertiableNoteInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of convertiable note interest 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;">rgen_ScheduleOfConvertiableNoteInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_ConvertibleDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 convertible debt instrument. Includes, but is not limited to, principal amount and amortized premium or discount.</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_ConvertibleDebtTableTextBlock</td>
</tr>
<tr>
<td style="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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020199904">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Stock-Based Compensation Expense</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table presents stock-based compensation expense in the Company&#8217;s condensed consolidated statements of comprehensive income:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:55.172%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.343%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.8629999999999995%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cost of product revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">393</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">610</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,506</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,847</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Research and development</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">700</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">534</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,095</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1,955</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Selling, general and administrative</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,280</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5,010</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15,509</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17,252</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total stock-based compensation</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,373</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6,154</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19,110</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">21,054</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of Option Activity</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information regarding option activity for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 under the Plans is summarized below:</span></p><p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:50.18%;"></td>
        <td style="width:1.001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.674%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.221%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.893%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.674%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.221%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.133%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted<br/>average<br/>exercise<br/>price</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted-<br/>Average<br/>Remaining<br/>Contractual<br/>Term<br/>(in Years)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Aggregate<br/>Intrinsic<br/>Value<br/>(in Thousands)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options outstanding at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">609,965</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">71.74</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Granted</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">66,069</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">173.08</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exercised</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22,872</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15.52</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeited/expired/cancelled</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2,000</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">199.71</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options outstanding at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">651,162</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">83.60</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options exercisable at September 30, 2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">371,782</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">61.46</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested and expected to vest at September 30, 2023</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">637,673</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">83.18</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5.73</span></span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">53,173</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:3pt;border-bottom:0.75pt solid;margin-right:83.333%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.635986778229898%;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested options as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees.</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Summary of Restricted Stock Unit Activity</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nine months ended September 30, 2023 under the Plans is summarized below:</span><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:65.96%;"></td>
        <td style="width:1.121%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.129999999999999%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.601%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.59%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.601%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Weighted Average<br/>Grant Date<br/>Fair Value</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unvested at December 31, 2022</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">531,034</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">142.57</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awarded</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">175,475</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">174.86</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">173,714</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">118.70</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Forfeited/cancelled</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">53,920</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">179.53</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unvested at September 30, 2023</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">478,875</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">188.41</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Vested and expected to vest at September 30, 2023</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">411,646</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">153.79</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:6.667%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.571084182443509%;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested stock units as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees. </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_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript:void(0);" onclick="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> -Subparagraph (h)(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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited 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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="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> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<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 (d)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 718<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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020055664">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_EarningsPerShareBasicAbstract', window );"><strong>Earnings Per Share, Basic [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_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Basic and Diluted Weighted Average Shares Outstanding</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of basic and diluted weighted average shares outstanding is as follows:</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:45.72%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:11.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.14%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.24%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.82%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended<br/>September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:9pt;font-family:Times New Roman;min-width:fit-content;">(Amounts in thousands, except per share data)</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:9pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Numerator:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Net income</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">18,172</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">40,405</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">67,065</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">137,230</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Effect of dilutive securities:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Charges associated with convertible debt instruments, net of tax</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#8212;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">387</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Numerator for diluted earnings per share &#8211; net income available to common stockholders after the effect of dilutive securities</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">18,172</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">40,405</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">67,065</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">137,617</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:bold;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Denominator:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Weighted average shares used in computing net income per share &#8211; basic</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,766</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,498</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,688</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">55,432</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Effect of dilutive shares:</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Options and stock units</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">439</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">673</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">469</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">663</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Convertible Senior Notes</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">735</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,131</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">776</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,501</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Dilutive effect of unvested performance stock units</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">-</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">-</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:15pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Dilutive potential common shares</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,174</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,806</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1,245</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2,166</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Denominator for diluted earnings per share &#8211; adjusted weighted average shares used in computing net income per share &#8211; diluted</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">56,940</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">57,304</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">56,933</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">57,598</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr>
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Earnings per share:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Basic</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.33</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.73</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.20</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2.48</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;">
        <td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Diluted</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.32</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">0.71</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.18</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="text-indent:0;font-size:9pt;margin-top:0;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">$</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">2.39</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</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_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -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_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094017892592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</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_TextBlockAbstract', window );"><strong>Text Block [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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock', window );">Percentage by Geographic Area or Significant Customers</a></td>
<td class="text"><p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table represents the Company&#8217;s total revenue by geographic area (based on the location of the customer):</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:60%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:6.068%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.676%;"></td>
        <td style="width:1%;"></td>
        <td style="width:7.175%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.006%;"></td>
        <td style="width:1%;"></td>
        <td style="width:5.082000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:2.676%;"></td>
        <td style="width:1%;"></td>
        <td style="width:6.309%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Arial;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Three Months Ended</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">Nine Months Ended</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">September 30,</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:8pt;">
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2023</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="text-indent:0;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-size:8pt;font-family:Times New Roman;min-width:fit-content;">2022</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="text-indent:0;font-size:8pt;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;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue by customers' geographic locations:</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">North America</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">49</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">44</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Europe</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">38</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">APAC/Other</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">23</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p></td>
        <td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:10pt;">
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"><p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Total revenue</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">100</span></p></td>
        <td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:normal;font-size:10pt;font-family:Times New Roman;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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.</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 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-21<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 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-18<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 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-20<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 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-16<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock</td>
</tr>
<tr>
<td style="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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011072000">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Summary of Company's Cash, Cash Equivalents and Marketable Securities Held to Maturity (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_CashAndCashEquivalentsAxis=rgen_CashAndMoneyMarketFundsMember', window );">Cash and money market funds</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts', window );">Cash and cash equivalents, Amortized Costs</a></td>
<td class="nump">$ 630,779<span></span>
</td>
<td class="nump">$ 523,458<span></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_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue', window );">Cash and cash equivalents, Estimated Fair Value</a></td>
<td class="nump">630,779<span></span>
</td>
<td class="nump">523,458<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_InvestmentTypeAxis=us-gaap_CashAndCashEquivalentsMember', window );">Cash and cash equivalents</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts', window );">Cash and cash equivalents, Amortized Costs</a></td>
<td class="nump">630,779<span></span>
</td>
<td class="nump">523,458<span></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_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue', window );">Cash and cash equivalents, Estimated Fair Value</a></td>
<td class="nump">$ 630,779<span></span>
</td>
<td class="nump">523,458<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_InvestmentTypeAxis=us-gaap_USTreasuryBillSecuritiesMember', window );">U.S. treasury bills</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts', window );">Cash and cash equivalents, Amortized Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,299<span></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_rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain', window );">Marketable securities, Gross Unrealized Gains</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24<span></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_rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue', window );">Marketable securities, Estimated Fair Value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,323<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_InvestmentTypeAxis=rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember', window );">Cash equivalents and marketable securities</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [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_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts', window );">Cash and cash equivalents, Amortized Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">623,757<span></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_rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain', window );">Marketable securities, Gross Unrealized Gains</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_AvailableForSaleSecuritiesEstimatedFairValue', window );">Marketable securities, Estimated Fair Value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 623,781<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_AvailableForSaleSecuritiesEstimatedFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Available for sale securities estimated fair 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;">rgen_AvailableForSaleSecuritiesEstimatedFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt securities held to maturity and cash and cash equivalents amortized 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;">rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt securities held to maturity and cash and cash equivalents estimated fair 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;">rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt securities held to maturity estimated fair 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;">rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt securities held to maturity gross unrealized gain.</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;">rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_CashAndCashEquivalentsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=rgen_CashAndMoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=rgen_CashAndMoneyMarketFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_InvestmentTypeAxis=us-gaap_CashAndCashEquivalentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentTypeAxis=us-gaap_CashAndCashEquivalentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_InvestmentTypeAxis=us-gaap_USTreasuryBillSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentTypeAxis=us-gaap_USTreasuryBillSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_InvestmentTypeAxis=rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentTypeAxis=rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>47
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094023313280">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [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_rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost', window );">Debt Securities Maturity Within One Year Amortized Cost</a></td>
<td class="nump">$ 100,299<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">Maturity of one year or less, Estimated Fair Value</a></td>
<td class="nump">$ 100,323<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt securities maturity within one year amortized cost.</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;">rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<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/2147481800/320-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480832/942-320-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019850512">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Financial assets and financial liabilities measured at fair value on a recurring basis (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_rgen_ShortTermContingentConsideration', window );">Short-term contingent consideration</a></td>
<td class="nump">$ 12,589<span></span>
</td>
<td class="nump">$ 13,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_rgen_LongTermContingentConsideration', window );">Long-term contingent consideration</a></td>
<td class="nump">13,759<span></span>
</td>
<td class="nump">51,559<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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember', window );">Money Market</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_AssetsFairValueDisclosure', window );">Assets, fair value</a></td>
<td class="nump">389,473<span></span>
</td>
<td class="nump">343,929<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Money Market</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_AssetsFairValueDisclosure', window );">Assets, fair value</a></td>
<td class="nump">389,473<span></span>
</td>
<td class="nump">343,929<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_rgen_ShortTermContingentConsideration', window );">Short-term contingent consideration</a></td>
<td class="nump">12,589<span></span>
</td>
<td class="nump">13,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_rgen_LongTermContingentConsideration', window );">Long-term contingent consideration</a></td>
<td class="nump">$ 13,759<span></span>
</td>
<td class="nump">$ 51,559<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_LongTermContingentConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-term contingent consideration.</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;">rgen_LongTermContingentConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_ShortTermContingentConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Short-term contingent consideration.</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;">rgen_ShortTermContingentConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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 probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="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 820<br> -SubTopic 10<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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 3<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>49
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094016460448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurement - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 17, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</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_rgen_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Purchase of treasury stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100.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_BusinessAcquisitionAxis=rgen_AvitideIncMember', window );">Avitide, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred', window );">Business combination contingent consideration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 125.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_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">FlexBiosys, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_SummaryOfSignificantAccountingPoliciesLineItems', window );"><strong>Summary Of Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred', window );">Business combination contingent consideration</a></td>
<td class="nump">$ 6.6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 42.0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_SummaryOfSignificantAccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Significant Accounting Policies [Line Items]</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;">rgen_SummaryOfSignificantAccountingPoliciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 by the acquirer as part of consideration transferred in a business combination.</p></div>
<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)(3)<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 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479668/805-30-25-5<br><br>Reference 3: 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 4: 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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="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 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 3: 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_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_AvitideIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_AvitideIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>50
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020923792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Payment of contingent consideration earnout</a></td>
<td class="num">$ (34,292)<span></span>
</td>
<td class="num">$ (2,309)<span></span>
</td>
<td class="num">$ (31,266)<span></span>
</td>
<td class="num">$ (11,604)<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=rgen_ContingentConsiderationMember', window );">Contingent Consideration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Balance as of December 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65,509<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements', window );">Acquisition date fair value of contingent consideration earnout</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,632<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Payment of contingent consideration earnout</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(14,527)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred', window );">Decrease in fair value of contingent consideration earnouts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(31,266)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Balance as of September 30 , 2023</a></td>
<td class="nump">$ 26,348<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 26,348<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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 by the acquirer as part of consideration transferred in a business combination.</p></div>
<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)(3)<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 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479668/805-30-25-5<br><br>Reference 3: 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 4: 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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-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;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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 3<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 settlements of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</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 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and nonfinancial obligations.</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 820<br> -SubTopic 10<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_LiabilitiesFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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=rgen_ContingentConsiderationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_ContingentConsiderationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011352016">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs (Detail) - Contingent Consideration - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_LiabilitiesFairValueDisclosure', window );">Liabilities, fair value</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 26,348<span></span>
</td>
<td class="nump">$ 65,509<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=rgen_ContingentConsiderationMember', window );">Revenue and Volume Based Payments | Monte Carlo Simulation | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Liabilities, fair value</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 1,460<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=rgen_ContingentConsiderationMember', window );">Revenue and Volume Based Payments | Monte Carlo Simulation | Fair Value, Recurring | Earnout Discount Rate</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">6.50%<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=rgen_ContingentConsiderationMember', window );">Revenue and Volume Based Payments | Monte Carlo Simulation | Fair Value, Recurring | Volatility</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">21.70%<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=rgen_ContingentConsiderationMember', window );">Revenue and Volume Based Payments | Monte Carlo Simulation | Fair Value, Recurring | Revenue &amp; Volume Discount Rate</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">8.20%<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=rgen_ContingentConsiderationMember', window );">Manufacturing line expansions | Monte Carlo Simulation | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_ProbabilityOfSuccess', window );">Probability of success</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">100.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_DerivativeInstrumentRiskAxis=rgen_ContingentConsiderationMember', window );">Manufacturing line expansions | Monte Carlo Simulation | Fair Value, Recurring | Probability of Success</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">100.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_DerivativeInstrumentRiskAxis=rgen_ContingentConsiderationMember', window );">Manufacturing line expansions | Probability-Weighted Present Value [Member] | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Liabilities, fair value</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 5,505<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=rgen_ContingentConsiderationMember', window );">Manufacturing line expansions | Probability-Weighted Present Value [Member] | Fair Value, Recurring | Earnout Discount Rate</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">6.30%<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=rgen_ContingentConsiderationMember', window );">Minimum | Revenue and Volume Based Payments | Monte Carlo Simulation | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="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 );">Discount Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6.10%<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_rgen_VolatilityRateOfContingentConsideration', window );">Volatility</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">13.10%<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_rgen_RevenueAndVolumeDiscountRate', window );">Revenue and volume discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5.10%<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=rgen_ContingentConsiderationMember', window );">Minimum | Manufacturing line expansions | Probability-Weighted Present Value [Member] | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_DerivativeFixedInterestRate', window );">Discount Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6.10%<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=rgen_ContingentConsiderationMember', window );">Maximum | Revenue and Volume Based Payments | Monte Carlo Simulation | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="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 );">Discount Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">7.10%<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_rgen_VolatilityRateOfContingentConsideration', window );">Volatility</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">24.60%<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_rgen_RevenueAndVolumeDiscountRate', window );">Revenue and volume discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">9.30%<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=rgen_ContingentConsiderationMember', window );">Maximum | Manufacturing line expansions | Probability-Weighted Present Value [Member] | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_DerivativeFixedInterestRate', window );">Discount Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=rgen_ContingentConsiderationMember', window );">Avitide and FlexBiosys | Monte Carlo Simulation | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Liabilities, fair value</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 19,383<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_rgen_ProbabilityOfSuccess', window );">Probability of success</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">100.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_DerivativeInstrumentRiskAxis=rgen_ContingentConsiderationMember', window );">Avitide and FlexBiosys | Monte Carlo Simulation | Fair Value, Recurring | Probability of Success</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">100.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_DerivativeInstrumentRiskAxis=rgen_ContingentConsiderationMember', window );">Avitide and FlexBiosys | Monte Carlo Simulation | Fair Value, Recurring | Earnout Discount Rate</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageDiscountRate', window );">Weighted average discount rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">7.10%<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=rgen_ContingentConsiderationMember', window );">Avitide and FlexBiosys | Minimum | Monte Carlo Simulation | Fair Value, Recurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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="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 );">Discount Rate</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">7.10%<span></span>
</td>
<td class="text">&#160;<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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.</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_rgen_ProbabilityOfSuccess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Probability of success.</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;">rgen_ProbabilityOfSuccess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_RevenueAndVolumeDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and volume discount rate.</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;">rgen_RevenueAndVolumeDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_VolatilityRateOfContingentConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Volatility rate of contingent consideration.</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;">rgen_VolatilityRateOfContingentConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_WeightedAverageDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate.</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;">rgen_WeightedAverageDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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 3<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and nonfinancial obligations.</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 820<br> -SubTopic 10<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_LiabilitiesFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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=rgen_ContingentConsiderationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_ContingentConsiderationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=rgen_RevenueAndVolumeBasedPaymentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_RevenueAndVolumeBasedPaymentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ValuationTechniqueAxis=rgen_MonteCarloSimulationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ValuationTechniqueAxis=rgen_MonteCarloSimulationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_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_MeasurementInputTypeAxis=rgen_MeasurementInputEarnoutDiscountRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=rgen_MeasurementInputEarnoutDiscountRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_MeasurementInputTypeAxis=us-gaap_MeasurementInputPriceVolatilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=us-gaap_MeasurementInputPriceVolatilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_MeasurementInputTypeAxis=rgen_MeasurementInputRevenueVolumeDiscountRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=rgen_MeasurementInputRevenueVolumeDiscountRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=rgen_ManufacturingLineExpansionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_ManufacturingLineExpansionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_MeasurementInputTypeAxis=rgen_MeasurementInputProbabilityOfSuccessMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=rgen_MeasurementInputProbabilityOfSuccessMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ValuationTechniqueAxis=rgen_ProbabilityWeightedPresentValueMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ValuationTechniqueAxis=rgen_ProbabilityWeightedPresentValueMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_AvitideAndFlexbiosysMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_AvitideAndFlexbiosysMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020941488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisition of FlexBiosys, Inc - Additional Information (Detail) - 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">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 17, 2023</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 869,252<span></span>
</td>
<td class="nump">$ 869,252<span></span>
</td>
<td class="nump">$ 855,513<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=rgen_FlexbiosysIncMember', window );">FlexBiosys</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1', window );">Business combination date of acquistion</a></td>
<td class="text">Apr. 17,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable', window );">Equity consideration</a></td>
<td class="nump">$ 41,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash consideration</a></td>
<td class="nump">29,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh', window );">Business Combination, Indemnification Assets, Range of Outcomes, Value, High</a></td>
<td class="nump">$ 6,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued', window );">Shares of common stock issued for acquisition</a></td>
<td class="nump">31,415<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">31,415<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable', window );">Value of common stock issued</a></td>
<td class="nump">$ 41,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred', window );">Business combination contingent consideration</a></td>
<td class="nump">6,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 42,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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities', window );">Net liabilities assumed</a></td>
<td class="nump">14,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">12,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue', window );">Intangible Asset Residual Value</a></td>
<td class="nump">14,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Business combination, acquisition related costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts', window );">Transaction costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">900<span></span>
</td>
<td class="nump">900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="nump">$ 14,321<span></span>
</td>
<td class="nump">$ 14,321<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=rgen_FlexbiosysIncMember', window );">FlexBiosys | Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable', window );">Equity consideration</a></td>
<td class="nump">5,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable', window );">Value of common stock issued</a></td>
<td class="nump">$ 5,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expected value at the end of their useful life of a major finite-lived intangible asset class acquired during the period either individually or as part of a group of assets (in either an asset acquisition or business combination). 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.</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)(2)<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_AcquiredFiniteLivedIntangibleAssetResidualValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 direct costs of the business combination including legal, accounting, and other costs incurred to consummate the business acquisition.</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_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity interests issued or issuable to acquire 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 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-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_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.</p></div>
<a href="javascript:void(0);" onclick="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 25<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479405/805-10-25-23<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAcquisitionRelatedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interests of the acquirer, including instruments or interests issued or issuable in consideration for the business combination.</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 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_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 by the acquirer as part of consideration transferred in a business combination.</p></div>
<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)(3)<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 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479668/805-30-25-5<br><br>Reference 3: 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 4: 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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 indemnification assets recognized in connection with a business combination, this element represents an estimate of the high-end of the potential range (undiscounted) of the indemnification benefit which may be realized.</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 (a)(3)<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_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intangible assets, excluding goodwill, 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/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 4: 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 5: 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 6: 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 7: 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/2147479853/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_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=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094021066848">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisition of FlexBiosys, Inc - Fair Value of Net Assets Acquired (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Apr. 17, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 869,252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 855,513<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=rgen_FlexbiosysIncMember', window );">FlexBiosys</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Cash and cash equivalents</a></td>
<td class="nump">1,090<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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="nump">683<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="nump">667<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">35<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">12,034<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_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right of use asset</a></td>
<td class="nump">3,537<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">14,321<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other long-term assets</a></td>
<td class="nump">10<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="num">(136)<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_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="num">(314)<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_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent', window );">Operating lease liability</a></td>
<td class="num">(39)<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_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent', window );">Operating lease liability, long-term</a></td>
<td class="num">(3,498)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of net assets acquired</a></td>
<td class="nump">41,030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">FlexBiosys | Customer relationships</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">2,530<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">FlexBiosys | Developed technology</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">9,860<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">FlexBiosys | Trademark and tradename</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">FlexBiosys | Non-compete agreements</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">$ 220<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_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Current Liabilities Accrued Liabilities</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Operating Lease Liability 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;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Operating Lease Liability Non 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;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Operating Lease Right Of Use Asset.</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;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intangible assets, excluding goodwill, 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inventory 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 after 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/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 4: 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 5: 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 6: 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 7: 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/2147479853/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_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019848432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitionsof FlexBiosys, Inc - Estimated Useful Life and Fair Value (Detail) - FlexBiosys<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2023 </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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 12,640<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=rgen_FlexbiosysIncMember', window );">Customer relationships</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">12 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 2,530<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=rgen_FlexbiosysIncMember', window );">Developed technology</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">16 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 9,860<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=rgen_FlexbiosysIncMember', window );">Trademark and tradename</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">4 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 30<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember', window );">Non-compete agreements</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">5 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 220<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=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_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020891376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring Plan - Additional Information (Detail) - USD ($)<br> $ in Thousands</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">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jul. 31, 2023</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2023</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_NoncashinventorywriteOff', window );">Non-cash inventory write-off</a></td>
<td class="nump">$ 21,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring charges</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 26,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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 24,012<span></span>
</td>
<td class="nump">$ 24,012<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_NoncashinventorywriteOff">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>NoncashInventoryWrite-off.</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;">rgen_NoncashinventorywriteOff</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482047/420-10-45-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_RestructuringCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 420<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/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094012023136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring Plan - Summary of Restructuring Activities by Type of Cost (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2023</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">$ 24,012<span></span>
</td>
<td class="nump">$ 24,012<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_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember', window );">Severance &amp; employee-related costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">2,830<span></span>
</td>
<td class="nump">2,830<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_RestructuringCostAndReserveAxis=rgen_InventoryWriteOffMember', window );">Inventory Write-Off</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">17,185<span></span>
</td>
<td class="nump">17,185<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_RestructuringCostAndReserveAxis=rgen_AcceleratedDepreciationMember', window );">Accelerated depreciation</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">3,816<span></span>
</td>
<td class="nump">3,816<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_RestructuringCostAndReserveAxis=rgen_FacilityAndOtherExitCostsMember', window );">Facility and Other Exit Costs</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">181<span></span>
</td>
<td class="nump">181<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of product revenue</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">22,711<span></span>
</td>
<td class="nump">22,711<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of product revenue | Severance &amp; employee-related costs</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">1,654<span></span>
</td>
<td class="nump">1,654<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of product revenue | Inventory Write-Off</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">17,185<span></span>
</td>
<td class="nump">17,185<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of product revenue | Accelerated depreciation</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">3,788<span></span>
</td>
<td class="nump">3,788<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of product revenue | Facility and Other Exit Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">84<span></span>
</td>
<td class="nump">84<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">35<span></span>
</td>
<td class="nump">35<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development | Severance &amp; employee-related costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">34<span></span>
</td>
<td class="nump">34<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development | Inventory Write-Off</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development | Accelerated depreciation</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development | Facility and Other Exit Costs</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">1,266<span></span>
</td>
<td class="nump">1,266<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative | Severance &amp; employee-related costs</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">1,142<span></span>
</td>
<td class="nump">1,142<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative | Inventory Write-Off</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative | Accelerated depreciation</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">27<span></span>
</td>
<td class="nump">27<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative | Facility and Other Exit Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">$ 97<span></span>
</td>
<td class="nump">$ 97<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 420<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/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestructuringCostAndReserveAxis=rgen_InventoryWriteOffMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=rgen_InventoryWriteOffMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestructuringCostAndReserveAxis=rgen_AcceleratedDepreciationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=rgen_AcceleratedDepreciationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestructuringCostAndReserveAxis=rgen_FacilityAndOtherExitCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=rgen_FacilityAndOtherExitCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094015354704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring Plan - Summary of Activity Related to Restructuring Plan (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2023 </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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">$ 24,012<span></span>
</td>
<td class="nump">$ 24,012<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Amounts Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,649)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserveSettledWithoutCash2', window );">Non-Cash Restructuring Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(21,225)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Restructuring Liability</a></td>
<td class="nump">138<span></span>
</td>
<td class="nump">138<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_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember', window );">Severance &amp; employee-related costs</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">2,830<span></span>
</td>
<td class="nump">2,830<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Amounts Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,478)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserveSettledWithoutCash2', window );">Non-Cash Restructuring Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(214)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Restructuring Liability</a></td>
<td class="nump">138<span></span>
</td>
<td class="nump">138<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_RestructuringCostAndReserveAxis=rgen_InventoryWriteOffMember', window );">Inventory Write-Off</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">17,185<span></span>
</td>
<td class="nump">17,185<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Amounts Paid</a></td>
<td class="text">&#160;<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_RestructuringReserveSettledWithoutCash2', window );">Non-Cash Restructuring Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(17,185)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Restructuring Liability</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveAxis=rgen_AcceleratedDepreciationMember', window );">Accelerated depreciation</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="nump">3,816<span></span>
</td>
<td class="nump">3,816<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Amounts Paid</a></td>
<td class="text">&#160;<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_RestructuringReserveSettledWithoutCash2', window );">Non-Cash Restructuring Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,816)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Restructuring Liability</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveAxis=rgen_FacilityExitAndOtherExitCostsMember', window );">Facility exit and other exit costs</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_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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_RestructuringCosts', window );">Restructuring Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">181<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Amounts Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(171)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserveSettledWithoutCash2', window );">Non-Cash Restructuring Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(10)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Restructuring Liability</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRestructuring</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 420<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/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserve">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized 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 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_RestructuringReserve</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserveSettledWithoutCash2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the reserve for full or partial settlement through consideration other than cash.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_RestructuringReserveSettledWithoutCash2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestructuringCostAndReserveAxis=rgen_InventoryWriteOffMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=rgen_InventoryWriteOffMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestructuringCostAndReserveAxis=rgen_AcceleratedDepreciationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=rgen_AcceleratedDepreciationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestructuringCostAndReserveAxis=rgen_FacilityExitAndOtherExitCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestructuringCostAndReserveAxis=rgen_FacilityExitAndOtherExitCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094021015504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Summary of Disaggregation of Revenue (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total revenue</a></td>
<td class="nump">$ 141,192<span></span>
</td>
<td class="nump">$ 200,741<span></span>
</td>
<td class="nump">$ 483,021<span></span>
</td>
<td class="nump">$ 614,774<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Product Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total revenue</a></td>
<td class="nump">141,156<span></span>
</td>
<td class="nump">200,708<span></span>
</td>
<td class="nump">482,910<span></span>
</td>
<td class="nump">614,668<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_RoyaltyMember', window );">Royalty and Other Income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total revenue</a></td>
<td class="nump">$ 36<span></span>
</td>
<td class="nump">$ 33<span></span>
</td>
<td class="nump">$ 111<span></span>
</td>
<td class="nump">$ 106<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 2: 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 3: 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 4: 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 5: 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 6: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 8: 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 9: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ProductMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_RoyaltyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_RoyaltyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020854336">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_ContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Balances from contracts with customers only:</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_ContractWithCustomerReceivableAfterAllowanceForCreditLoss', window );">Accounts receivable</a></td>
<td class="nump">$ 106,158<span></span>
</td>
<td class="nump">$ 116,247<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenue', window );">Deferred revenue (included in accrued liabilities and other noncurrent liabilities in the condensed consolidated balance sheets)</a></td>
<td class="nump">11,447<span></span>
</td>
<td class="nump">19,631<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Revenue recognized during periods presented relating to:</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_ContractWithCustomerLiability', window );">The beginning deferred revenue balance</a></td>
<td class="nump">$ 16,999<span></span>
</td>
<td class="nump">$ 13,390<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</p></div>
<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_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to consideration is unconditional.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481058/954-310-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 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-4<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 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<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 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_ContractWithCustomerReceivableAfterAllowanceForCreditLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and obligation to transfer product and service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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(26)(c))<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_DeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>60
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020974944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Changes in Carrying Value of Goodwill (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2023 </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_GoodwillLineItems', window );"><strong>Goodwill [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_Goodwill', window );">Balance</a></td>
<td class="nump">$ 855,513<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Cumulative translation adjustment</a></td>
<td class="num">(582)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance</a></td>
<td class="nump">869,252<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=rgen_FlexbiosysIncMember', window );">FlexBiosys</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_GoodwillLineItems', window );"><strong>Goodwill [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_GoodwillAcquiredDuringPeriod', window );">Acquisition of FlexBiosys, Inc</a></td>
<td class="nump">14,355<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Measurement period adjustment - FlexBiosys</a></td>
<td class="num">(34)<span></span>
</td>
</tr>
<tr class="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 );">Balance</a></td>
<td class="nump">$ 14,321<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/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 4: 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 5: 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 6: 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 7: 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/2147479853/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_GoodwillAcquiredDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-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_GoodwillAcquiredDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-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_GoodwillForeignCurrencyTranslationGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<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/disclosureRef<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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-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 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<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 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<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 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 16<br> -SubTopic 10<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479405/805-10-25-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_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_FlexbiosysIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_FlexbiosysIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020232768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_rgen_FiniteLivedIntangibleLiabilitiesLineItems', window );"><strong>Finite-Lived Intangible Liabilities [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill', window );">Impairment of intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.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_AmortizationOfIntangibleAssets', window );">Amortization of Intangible Assets</a></td>
<td class="nump">$ 7.5<span></span>
</td>
<td class="nump">$ 6.6<span></span>
</td>
<td class="nump">$ 22.4<span></span>
</td>
<td class="nump">$ 19.8<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_FiniteLivedIntangibleLiabilitiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finite-Lived Intangible Liabilities [Line Items]</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;">rgen_FiniteLivedIntangibleLiabilitiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="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 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482686/350-30-45-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to fair value.</p></div>
<a href="javascript:void(0);" onclick="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 3<br> -Subparagraph (b)<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011362240">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Schedule of Intangible Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_rgen_IntangibleAssetsLineItems', window );"><strong>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_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 466,276<span></span>
</td>
<td class="nump">$ 454,130<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsGrossExcludingGoodwill', window );">Gross Carrying Value</a></td>
<td class="nump">466,976<span></span>
</td>
<td class="nump">454,830<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(123,247)<span></span>
</td>
<td class="num">(101,154)<span></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_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(123,247)<span></span>
</td>
<td class="num">(101,154)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">343,029<span></span>
</td>
<td class="nump">352,976<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Net Carrying Value</a></td>
<td class="nump">$ 343,729<span></span>
</td>
<td class="nump">$ 353,676<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">16 years<span></span>
</td>
<td class="text">16 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=rgen_TrademarkMember', window );">Trademark</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_rgen_IntangibleAssetsLineItems', window );"><strong>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_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Gross Carrying Value</a></td>
<td class="nump">$ 700<span></span>
</td>
<td class="nump">$ 700<span></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_rgen_IndefiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">700<span></span>
</td>
<td class="nump">700<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Technology - developed</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_rgen_IntangibleAssetsLineItems', window );"><strong>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_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">200,188<span></span>
</td>
<td class="nump">190,463<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(40,093)<span></span>
</td>
<td class="num">(30,992)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 160,095<span></span>
</td>
<td class="nump">$ 159,471<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">16 years<span></span>
</td>
<td class="text">16 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember', window );">Patents</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_rgen_IntangibleAssetsLineItems', window );"><strong>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_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 240<span></span>
</td>
<td class="nump">$ 240<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(240)<span></span>
</td>
<td class="num">(240)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</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_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">8 years<span></span>
</td>
<td class="text">8 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_IntangibleAssetsLineItems', window );"><strong>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_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 255,113<span></span>
</td>
<td class="nump">$ 252,934<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(78,929)<span></span>
</td>
<td class="num">(66,559)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 176,184<span></span>
</td>
<td class="nump">$ 186,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_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">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_rgen_IntangibleAssetsLineItems', window );"><strong>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_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 7,709<span></span>
</td>
<td class="nump">$ 7,682<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(1,653)<span></span>
</td>
<td class="num">(1,319)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 6,056<span></span>
</td>
<td class="nump">$ 6,363<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">19 years<span></span>
</td>
<td class="text">19 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember', window );">Other 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_rgen_IntangibleAssetsLineItems', window );"><strong>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_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 3,026<span></span>
</td>
<td class="nump">$ 2,811<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(2,332)<span></span>
</td>
<td class="num">(2,044)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 694<span></span>
</td>
<td class="nump">$ 767<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">4 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indefinite Lived Intangible Assets Accumulated Amortization</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;">rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_IndefiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indefinite Lived Intangible Assets Net</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;">rgen_IndefiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_IntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Intangible Assets [Line Items]</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;">rgen_IntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 928<br> -SubTopic 340<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483147/928-340-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.</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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsGrossExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of intangible assets, excluding goodwill.</p></div>
<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(15))<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_IntangibleAssetsGrossExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=rgen_TrademarkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=rgen_TrademarkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_PatentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PatentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_OtherIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011091456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Amortization Expense for Amortized Intangible Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_rgen_FiniteLivedIntangibleLiabilitiesLineItems', window );"><strong>Finite-Lived Intangible Liabilities [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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2023 (remaining three months)</a></td>
<td class="nump">$ 7,504<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2024</a></td>
<td class="nump">29,558<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2025</a></td>
<td class="nump">29,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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2026</a></td>
<td class="nump">29,192<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2027</a></td>
<td class="nump">29,159<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">2028 and thereafter</a></td>
<td class="nump">218,396<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 343,029<span></span>
</td>
<td class="nump">$ 352,976<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_FiniteLivedIntangibleLiabilitiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finite-Lived Intangible Liabilities [Line Items]</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;">rgen_FiniteLivedIntangibleLiabilitiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011073728">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheet Detail - Schedule of Inventories (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_InventoryLineItems', window );"><strong>Inventory [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_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 128,894<span></span>
</td>
<td class="nump">$ 149,438<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work-in-process</a></td>
<td class="nump">5,630<span></span>
</td>
<td class="nump">6,183<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished products</a></td>
<td class="nump">76,848<span></span>
</td>
<td class="nump">82,656<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_InventoryNet', window );">Total inventories, net</a></td>
<td class="nump">$ 211,372<span></span>
</td>
<td class="nump">$ 238,277<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<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 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-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_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_InventoryLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(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 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-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_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<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 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-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_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>65
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022742416">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheet Detail - Property, Plant and Equipment (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Land', window );">Land</a></td>
<td class="nump">$ 950<span></span>
</td>
<td class="nump">$ 1,003<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BuildingsAndImprovementsGross', window );">Buildings</a></td>
<td class="nump">1,637<span></span>
</td>
<td class="nump">1,599<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseholdImprovementsGross', window );">Leasehold improvements</a></td>
<td class="nump">124,925<span></span>
</td>
<td class="nump">115,672<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MachineryAndEquipmentGross', window );">Equipment</a></td>
<td class="nump">111,625<span></span>
</td>
<td class="nump">94,613<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FurnitureAndFixturesGross', window );">Furniture, fixtures and office equipment</a></td>
<td class="nump">8,786<span></span>
</td>
<td class="nump">8,307<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareGross', window );">Computer hardware and software</a></td>
<td class="nump">35,359<span></span>
</td>
<td class="nump">29,813<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConstructionInProgressGross', window );">Construction in progress</a></td>
<td class="nump">37,679<span></span>
</td>
<td class="nump">31,553<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentOther', window );">Other</a></td>
<td class="nump">410<span></span>
</td>
<td class="nump">420<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_PropertyPlantAndEquipmentGross', window );">Total property, plant and equipment</a></td>
<td class="nump">321,371<span></span>
</td>
<td class="nump">282,980<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less - Accumulated depreciation</a></td>
<td class="num">(119,753)<span></span>
</td>
<td class="num">(92,307)<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_PropertyPlantAndEquipmentNet', window );">Total property, plant and equipment, net</a></td>
<td class="nump">$ 201,618<span></span>
</td>
<td class="nump">$ 190,673<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BuildingsAndImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BuildingsAndImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedComputerSoftwareGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<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_CapitalizedComputerSoftwareGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionInProgressGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FurnitureAndFixturesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FurnitureAndFixturesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Land">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depletion of real estate held for productive use, excluding land held for sale.</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(13))<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_Land</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseholdImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of additions or improvements to assets held under a lease 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> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseholdImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MachineryAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MachineryAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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/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)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: 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/2147480842/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_PropertyPlantAndEquipmentOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of other physical assets used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094016418896">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheet Detail - Schedule of Accrued Liabilities (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_rgen_ScheduleOfAccruedLiabilitiesLineItems', window );"><strong>Schedule of Accrued Liabilities [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_EmployeeRelatedLiabilitiesCurrent', window );">Employee compensation</a></td>
<td class="nump">$ 13,727<span></span>
</td>
<td class="nump">$ 33,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_DeferredRevenueCurrent', window );">Deferred revenue</a></td>
<td class="nump">10,879<span></span>
</td>
<td class="nump">19,283<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Income taxes payable</a></td>
<td class="nump">2,446<span></span>
</td>
<td class="nump">2,459<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">15,491<span></span>
</td>
<td class="nump">15,856<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_AccruedLiabilitiesCurrent', window );">Total accrued liabilities</a></td>
<td class="nump">$ 42,543<span></span>
</td>
<td class="nump">$ 71,120<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_ScheduleOfAccruedLiabilitiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Accrued Liabilities [Line Items]</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;">rgen_ScheduleOfAccruedLiabilitiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/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_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and obligation to transfer product and 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/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(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_DeferredRevenueCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019895712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Convertible Senior Notes - Additional Information (Detail)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jul. 19, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($) </div>
<div>Days</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 31, 2019 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleThresholdTradingDays', window );">Debt Instrument, Convertible, Threshold Trading Days | Days</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1', window );">Debt Instrument, Convertible, Threshold Consecutive Trading Days | Days</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember', window );">0.375% Convertible Senior Notes due 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>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Notes issued</a></td>
<td class="nump">$ 287.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 287.5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes, interest rate</a></td>
<td class="nump">0.375%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromConvertibleDebt', window );">Proceeds from issuance of convertible senior notes, net of costs</a></td>
<td class="nump">$ 278.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateTerms', window );">Interest repayment terms</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Notes, due date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Jul. 15,  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_LongTermDebt', window );">Notes, carrying value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 286.0<span></span>
</td>
<td class="nump">$ 284.6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtFairValue', window );">Fair value of the note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">405.3<span></span>
</td>
<td class="nump">$ 452.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_OptionToPurchaseAdditionalDebtFaceAmount', window );">Additional Notes issued</a></td>
<td class="nump">$ 37.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_rgen_DebtInstrumentConvertibleIntoEquity', window );">Debt instrument amount convertible into equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger', window );">Notes threshold percentage of stock price trigger</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">130.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DebtInstrumentConvertibleIntoEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt instrument convertible into equity.</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;">rgen_DebtInstrumentConvertibleIntoEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_OptionToPurchaseAdditionalDebtFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Option to purchase additional debt face amount.</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;">rgen_OptionToPurchaseAdditionalDebtFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Threshold period of specified consecutive trading days within which common stock price to conversion price of convertible debt instrument must exceed threshold percentage for specified number of trading days to trigger conversion feature.</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_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1</td>
</tr>
<tr>
<td style="padding-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_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Minimum percentage of common stock price to conversion price of convertible debt instruments to determine eligibility of conversion.</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_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger</td>
</tr>
<tr>
<td style="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_DebtInstrumentConvertibleThresholdTradingDays">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Threshold number of specified trading days that common stock price to conversion price of convertible debt instruments must exceed threshold percentage within a specified consecutive trading period to trigger conversion feature.</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_DebtInstrumentConvertibleThresholdTradingDays</td>
</tr>
<tr>
<td style="padding-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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (par) amount of debt instrument at time of issuance.</p></div>
<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 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 2: 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 3: 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 4: 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 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<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 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482949/835-30-55-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_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -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_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_DebtInstrumentInterestRateTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the interest rate as being fixed or variable, and, if variable, identification of the index or rate on which the interest rate is based and the number of points or percentage added to that index or rate to set the rate, and other pertinent information, such as frequency of rate resets.</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 210<br> -SubTopic 10<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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/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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 debt instrument is scheduled to be fully repaid, 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/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 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 (bbb)(2)<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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDate</td>
</tr>
<tr>
<td style="padding-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_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 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<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(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<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)(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_LongTermDebtFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same 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;">us-gaap_LongTermDebtFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromConvertibleDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the issuance of a long-term debt instrument which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder.</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_ProceedsFromConvertibleDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094021117728">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Convertible Senior Notes - Convertible Debt (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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_ConvertibleNotesPayableCurrent', window );">Total convertible senior notes</a></td>
<td class="nump">$ 285,956<span></span>
</td>
<td class="nump">$ 284,615<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_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember', window );">0.375% Convertible Senior Notes due 2024</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 );">Principal amount</a></td>
<td class="nump">287,437<span></span>
</td>
<td class="nump">287,470<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNet', window );">Unamortized debt issuance costs</a></td>
<td class="num">(1,481)<span></span>
</td>
<td class="num">(2,855)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConvertibleNotesPayableCurrent', window );">Total convertible senior notes</a></td>
<td class="nump">$ 285,956<span></span>
</td>
<td class="nump">$ 284,615<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertibleNotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the portion of long-term debt due within one year or the operating cycle if longer identified as Convertible Notes Payable. Convertible Notes Payable is a written promise to pay a note which can be exchanged for a specified amount of another, related security, at the option of the issuer and the holder.</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 210<br> -SubTopic 10<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_ConvertibleNotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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/2147479853/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/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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</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 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019333120">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Convertible Senior Notes - Schedule of convertiable note interest expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebtExcludingAmortization', window );">Contractual interest expense</a></td>
<td class="nump">$ 269<span></span>
</td>
<td class="nump">$ 270<span></span>
</td>
<td class="nump">$ 808<span></span>
</td>
<td class="nump">$ 809<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization of debt issuance costs</a></td>
<td class="nump">459<span></span>
</td>
<td class="nump">455<span></span>
</td>
<td class="nump">1,373<span></span>
</td>
<td class="nump">1,360<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_InterestExpenseDebt', window );">Total</a></td>
<td class="nump">$ 728<span></span>
</td>
<td class="nump">$ 725<span></span>
</td>
<td class="nump">$ 2,181<span></span>
</td>
<td class="nump">$ 2,169<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Debt Instrument, Interest Rate, Effective Percentage</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.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_AmortizationOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to 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/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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -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 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateEffectivePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_InterestExpenseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense for debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 2: 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 3: 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 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpenseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpenseDebtExcludingAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 portion of interest incurred in the period on debt arrangements that was charged against earnings, excluding amortization of debt discount (premium) and financing 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 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 2: 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 3: 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 4: 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 8<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_InterestExpenseDebtExcludingAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011630368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Additional Information (Detail) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>May 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockholdersEquityNoteDisclosureLineItems', window );"><strong>Stockholders Equity Note Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate intrinsic value of stock options exercised</a></td>
<td class="nump">$ 3.4<span></span>
</td>
<td class="nump">$ 9.8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value of share-based awards granted</a></td>
<td class="nump">$ 85.7<span></span>
</td>
<td class="nump">$ 76.64<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Weighted average grant date fair value of restricted stock units granted</a></td>
<td class="nump">$ 174.86<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Total unrecognized compensation cost</a></td>
<td class="nump">$ 66.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Unrecognized compensation cost, weighted average remaining requisite service period</a></td>
<td class="text">2 years 10 months 17 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares', window );">Number of unvested options and restricted stock units</a></td>
<td class="nump">2,156,681<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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, shares issued</a></td>
<td class="nump">55,774,706<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,557,698<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=rgen_AvitideLlcMember', window );">Avitide LLC</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockholdersEquityNoteDisclosureLineItems', window );"><strong>Stockholders Equity Note Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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, shares issued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">42,621<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_rgen_EarnoutConsiderationEarned', window );">Earnout consideration earned</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=rgen_StockOptionAndIncentivePlanMember', window );">2018 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockholdersEquityNoteDisclosureLineItems', window );"><strong>Stockholders Equity Note Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Common stock shares reserved for Issuance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,778,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Incentive options, vesting period</a></td>
<td class="nump">1,704,118<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rgen_UnvestedOptionsMember', window );">Unvested Options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockholdersEquityNoteDisclosureLineItems', window );"><strong>Stockholders Equity Note Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Incentive options, vesting period</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rgen_RestrictedStockAndPerformanceStockUnitsMember', window );">Restricted Stock Units and Performance Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockholdersEquityNoteDisclosureLineItems', window );"><strong>Stockholders Equity Note Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested', window );">Aggregate intrinsic value of restricted stock units vested</a></td>
<td class="nump">$ 32.3<span></span>
</td>
<td class="nump">$ 40.4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted average grant date fair value of restricted stock units granted</a></td>
<td class="nump">$ 174.86<span></span>
</td>
<td class="nump">$ 191.55<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Unit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_StockholdersEquityNoteDisclosureLineItems', window );"><strong>Stockholders Equity Note Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Closing price of common stock</a></td>
<td class="nump">$ 159.01<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_EarnoutConsiderationEarned">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Earnout consideration earned.</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;">rgen_EarnoutConsiderationEarned</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of 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;">rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_StockholdersEquityNoteDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stockholders Equity Note Disclosure [Line Items]</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;">rgen_StockholdersEquityNoteDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of common shares reserved for future issuance.</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 210<br> -SubTopic 10<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_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="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 (d)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="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 (d)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</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_SharePrice</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Intrinsic value of vested award under share-based payment arrangement. Excludes share and unit options.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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=rgen_AvitideLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_AvitideLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=rgen_StockOptionAndIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_StockOptionAndIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=rgen_UnvestedOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_UnvestedOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=rgen_RestrictedStockAndPerformanceStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_RestrictedStockAndPerformanceStockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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=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>71
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011463120">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Stock-Based Compensation Expense (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation</a></td>
<td class="nump">$ 6,373<span></span>
</td>
<td class="nump">$ 6,154<span></span>
</td>
<td class="nump">$ 19,110<span></span>
</td>
<td class="nump">$ 21,054<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of product revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Stock-based compensation</a></td>
<td class="nump">393<span></span>
</td>
<td class="nump">610<span></span>
</td>
<td class="nump">1,506<span></span>
</td>
<td class="nump">1,847<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation</a></td>
<td class="nump">700<span></span>
</td>
<td class="nump">534<span></span>
</td>
<td class="nump">2,095<span></span>
</td>
<td class="nump">1,955<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Stock-based compensation</a></td>
<td class="nump">$ 5,280<span></span>
</td>
<td class="nump">$ 5,010<span></span>
</td>
<td class="nump">$ 15,509<span></span>
</td>
<td class="nump">$ 17,252<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094016457760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Summary of Option Activity (Detail)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr><th class="th" colspan="2">
<div>Sep. 30, 2023 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Options Outstanding</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding at December 31, 2022 | shares | shares</a></td>
<td class="nump">609,965<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Granted | shares | shares</a></td>
<td class="nump">66,069<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised | shares | shares</a></td>
<td class="num">(22,872)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Forfeited/expired/cancelled | shares</a></td>
<td class="num">(2,000)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding at September 30, 2023 | shares | shares</a></td>
<td class="nump">651,162<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable at September 30, 2023 | shares | shares</a></td>
<td class="nump">371,782<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Vested and expected to vest at September 30, 2023 (1) | shares | shares</a></td>
<td class="nump">637,673<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted-Average Exercise Price Per Share</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding at December 31, 2022 | $ / shares</a></td>
<td class="nump">$ 71.74<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted | $ / shares</a></td>
<td class="nump">173.08<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised | $ / shares</a></td>
<td class="nump">15.52<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Forfeited/expired/cancelled | $ / shares</a></td>
<td class="nump">199.71<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding at September 30, 2023 | $ / shares</a></td>
<td class="nump">83.6<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Options exercisable at September 30, 2023 | $ / shares</a></td>
<td class="nump">61.46<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice', window );">Vested and expected to vest at September 30, 2023 | $ / shares</a></td>
<td class="nump">$ 83.18<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted-Average Remaining Contractual Term (in years)</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Vested and expected to vest at September 30, 2023</a></td>
<td class="text">5 years 8 months 23 days<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract', window );"><strong>Aggregate Intrinsic Value</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Vested and expected to vest at September 30, 2023 | $</a></td>
<td class="nump">$ 53,173<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested options as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees.</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_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</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;">rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="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)(iii)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="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)(iii)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.</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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 price of options that were either forfeited or expired.</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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 options outstanding, including both vested and non-vested options.</p></div>
<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)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 price at which grantees can acquire the shares reserved for issuance under the stock option 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)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<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 (e)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<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 (e)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<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 (e)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 price at which option holders acquired shares when converting their stock options into shares.</p></div>
<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)(02)<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<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 (e)(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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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://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 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(28))<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><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(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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020106208">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Stockholders' Equity - Summary of Option Activity (Parenthetical) (Detail) - Employee Stock Option<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Awards Granted to Non-Executive Level Employees</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_PercentageOfSharesSubjectToForfeiture', window );">Estimated forfeiture rates</a></td>
<td class="nump">8.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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Awards Granted to Executive Level Employees</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</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_rgen_PercentageOfSharesSubjectToForfeiture', window );">Estimated forfeiture rates</a></td>
<td class="nump">3.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_PercentageOfSharesSubjectToForfeiture">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares subject to forfeiture.</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;">rgen_PercentageOfSharesSubjectToForfeiture</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_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=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=rgen_NonExecutiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TitleOfIndividualAxis=rgen_NonExecutiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_TitleOfIndividualAxis=srt_ExecutiveOfficerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TitleOfIndividualAxis=srt_ExecutiveOfficerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>74
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022685888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Summary of Restricted Stock Unit Activity (Detail)<br></strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr><th class="th" colspan="2">
<div>Sep. 30, 2023 </div>
<div>$ / shares </div>
<div>shares</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Options Outstanding</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Unvested at December 31, 2022 | shares</a></td>
<td class="nump">531,034<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awarded | shares</a></td>
<td class="nump">175,475<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested | shares</a></td>
<td class="num">(173,714)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited/expired/cancelled | shares</a></td>
<td class="num">(53,920)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Unvested at September 30, 2023 | shares</a></td>
<td class="nump">478,875<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber', window );">Vested and expected to vest at September 30, 2023 | shares</a></td>
<td class="nump">411,646<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted-Average Remaining Contractual Term (in years)</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Weighted Average, Unvested at December 31,2022 | $ / shares</a></td>
<td class="nump">$ 142.57<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average, Awarded | $ / shares</a></td>
<td class="nump">174.86<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average, Vested | $ / shares</a></td>
<td class="nump">118.7<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Weighted Average, Forfeited/Cancelled | $ / shares</a></td>
<td class="nump">179.53<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Weighted Average, Unvested at September 30, 2023 | $ / shares</a></td>
<td class="nump">188.41<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue', window );">Weighted Average, Vested and expected to vest at September 30, 2023 | $ / shares</a></td>
<td class="nump">$ 153.79<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested stock units as of </span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</span><span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees. </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_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award equity instruments other than options vested and expected to vest outstanding weighted average grant date fair 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;">rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity-based payment instruments, excluding stock (or unit) options, that were forfeited 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<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)(03)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="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)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<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)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity-based payment instruments, excluding stock (or unit) options, that vested 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the 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 (c)(2)(iii)(02)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011076448">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Stockholders' Equity - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail) - Restricted Stock Units and Performance Stock Units<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</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_AwardTypeAxis=rgen_RestrictedStockAndPerformanceStockUnitsMember', window );">Awards Granted to Non-Executive Level Employees</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_PercentageOfSharesSubjectToForfeiture', window );">Estimated forfeiture rates</a></td>
<td class="nump">8.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_AwardTypeAxis=rgen_RestrictedStockAndPerformanceStockUnitsMember', window );">Awards Granted to Executive Level Employees</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</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_rgen_PercentageOfSharesSubjectToForfeiture', window );">Estimated forfeiture rates</a></td>
<td class="nump">3.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_PercentageOfSharesSubjectToForfeiture">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares subject to forfeiture.</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;">rgen_PercentageOfSharesSubjectToForfeiture</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_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=rgen_RestrictedStockAndPerformanceStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_RestrictedStockAndPerformanceStockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_TitleOfIndividualAxis=rgen_NonExecutiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TitleOfIndividualAxis=rgen_NonExecutiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_TitleOfIndividualAxis=srt_ExecutiveOfficerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TitleOfIndividualAxis=srt_ExecutiveOfficerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022778544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_ProductOrServiceAxis=rgen_NGLImpactAMember', window );">NGL Impact A [Member] | Research and Development Arrangement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_CommitmentsAndContingenciesLineItems', window );"><strong>Commitments and Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RoyaltyExpense', window );">Royalty payments</a></td>
<td class="nump">$ 0.8<span></span>
</td>
<td class="nump">$ 0.4<span></span>
</td>
<td class="nump">$ 3.1<span></span>
</td>
<td class="nump">$ 1.5<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_CommitmentsAndContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commitments and Contingencies [Line Items]</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;">rgen_CommitmentsAndContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RoyaltyExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 royalty payments under a contractual arrangement such as payment for mineral and drilling rights and use of technology or intellectual property.</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.3)<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_RoyaltyExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=rgen_NGLImpactAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_NGLImpactAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis=us-gaap_ResearchAndDevelopmentArrangementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis=us-gaap_ResearchAndDevelopmentArrangementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094020930416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Aug. 16, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_rgen_IncomeTaxesLineItems', window );"><strong>Income Taxes [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (benefit) provision</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (6,535)<span></span>
</td>
<td class="nump">$ 7,062<span></span>
</td>
<td class="nump">$ 5,824<span></span>
</td>
<td class="nump">$ 28,924<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="num">(56.20%)<span></span>
</td>
<td class="nump">14.90%<span></span>
</td>
<td class="nump">8.00%<span></span>
</td>
<td class="nump">17.40%<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_IncomeTaxAuthorityAxis=rgen_InflationReductionActOfTwoThousandTwentyTwoMember', window );">Inflation Reduction Act Of Two Thousand Twenty Two [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_IncomeTaxesLineItems', window );"><strong>Income Taxes [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_rgen_PercentageOfCurrentFederalTaxExpenseBenefit', window );">Percentage of alternative minimum tax</a></td>
<td class="nump">15.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_rgen_PercentOfExciseTaxOnNetStockRepurchases', window );">Percent of excise tax on net stock repurchases</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_rgen_IncomeTaxesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income Taxes [Line Items]</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;">rgen_IncomeTaxesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_PercentOfExciseTaxOnNetStockRepurchases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percent of excise tax on net stock repurchases.</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;">rgen_PercentOfExciseTaxOnNetStockRepurchases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_PercentageOfCurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Federal Tax Expense Benefit</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;">rgen_PercentageOfCurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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 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 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 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 4: 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 5: 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: 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 8: 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_IncomeTaxAuthorityAxis=rgen_InflationReductionActOfTwoThousandTwentyTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxAuthorityAxis=rgen_InflationReductionActOfTwoThousandTwentyTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094015270848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 04, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Jul. 31, 2019</div></th>
<th class="th"><div>Jul. 19, 2019</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Common stock excluded from calculation of diluted earnings per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">301,404<span></span>
</td>
<td class="nump">112,179<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">328,179<span></span>
</td>
<td class="nump">149,187<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_rgen_DilutiveEffectOnSharesOfConversionPremium', window );">Dilutive effect on shares of conversion premium</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">735,150<span></span>
</td>
<td class="nump">1,130,530<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">776,339<span></span>
</td>
<td class="nump">1,500,717<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Denominator for diluted earnings per share - adjusted weighted average shares used in computing net income per share - diluted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">56,940<span></span>
</td>
<td class="nump">57,304<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">56,933<span></span>
</td>
<td class="nump">57,598<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestOnConvertibleDebtNetOfTax', window );">Charges associated with convertible debt instruments, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 387<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate202006Member', window );">AccountingStandardsUpdate202006Member</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Denominator for diluted earnings per share - adjusted weighted average shares used in computing net income per share - diluted</a></td>
<td class="nump">3,474,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestOnConvertibleDebtNetOfTax', window );">Charges associated with convertible debt instruments, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember', window );">0.375% Convertible Senior Notes due 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 287,500<span></span>
</td>
<td class="nump">$ 287,500<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DilutiveEffectOnSharesOfConversionPremium">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Dilutive effect on shares of conversion premium.</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;">rgen_DilutiveEffectOnSharesOfConversionPremium</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (par) amount of debt instrument at time of issuance.</p></div>
<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 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 2: 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 3: 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 4: 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 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<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 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482949/835-30-55-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_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestOnConvertibleDebtNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest recognized on convertible debt instrument excluding interest on principal required to be paid in cash.</p></div>
<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><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 40<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestOnConvertibleDebtNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate202006Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate202006Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011737264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share - Reconciliation of Basic and Diluted Shares Amounts (Detail) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_NetIncomeLossAvailableToCommonStockholdersBasicAbstract', window );"><strong>Numerator</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">$ 18,172<span></span>
</td>
<td class="nump">$ 40,405<span></span>
</td>
<td class="nump">$ 67,065<span></span>
</td>
<td class="nump">$ 137,230<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DilutiveSecuritiesAbstract', window );"><strong>Effect of dilutive securities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestOnConvertibleDebtNetOfTax', window );">Charges associated with convertible debt instruments, net of tax</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">387<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToParentDiluted', window );">Numerator for diluted earnings per share - net income available to common stockholders after the effect of dilutive securities</a></td>
<td class="nump">$ 18,172<span></span>
</td>
<td class="nump">$ 40,405<span></span>
</td>
<td class="nump">$ 67,065<span></span>
</td>
<td class="nump">$ 137,617<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAbstract', window );"><strong>Denominator</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_rgen_NumberOfSharesBasicOutstanding', window );">Weighted average shares used in computing net income per share - basic</a></td>
<td class="nump">55,766<span></span>
</td>
<td class="nump">55,498<span></span>
</td>
<td class="nump">55,688<span></span>
</td>
<td class="nump">55,432<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract', window );"><strong>Effect of dilutive shares</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesRestrictedStock', window );">Options and stock units</a></td>
<td class="nump">439<span></span>
</td>
<td class="nump">673<span></span>
</td>
<td class="nump">469<span></span>
</td>
<td class="nump">663<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities', window );">Convertible Senior Notes</a></td>
<td class="nump">735<span></span>
</td>
<td class="nump">1,131<span></span>
</td>
<td class="nump">776<span></span>
</td>
<td class="nump">1,501<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits', window );">Dilutive effect of unvested performance stock units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2<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_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Dilutive potential common shares</a></td>
<td class="nump">1,174<span></span>
</td>
<td class="nump">1,806<span></span>
</td>
<td class="nump">1,245<span></span>
</td>
<td class="nump">2,166<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 );">Denominator for diluted earnings per share - adjusted weighted average shares used in computing net income per share - diluted</a></td>
<td class="nump">56,940<span></span>
</td>
<td class="nump">57,304<span></span>
</td>
<td class="nump">56,933<span></span>
</td>
<td class="nump">57,598<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">$ 0.33<span></span>
</td>
<td class="nump">$ 0.73<span></span>
</td>
<td class="nump">$ 1.2<span></span>
</td>
<td class="nump">$ 2.48<span></span>
</td>
</tr>
<tr class="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 (Note 12)</a></td>
<td class="nump">$ 0.32<span></span>
</td>
<td class="nump">$ 0.71<span></span>
</td>
<td class="nump">$ 1.18<span></span>
</td>
<td class="nump">$ 2.39<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>DilutivesharesAbstract</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;">rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_NumberOfSharesBasicOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 basic outstanding.</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;">rgen_NumberOfSharesBasicOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of shares dilutive effect of unvested performance stock units.</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;">rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>rgen_</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_DilutiveSecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DilutiveSecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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/2147483589/942-220-S99-1<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147483589/942-220-S99-1<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(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: 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 16: 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_IncrementalCommonSharesAttributableToConversionOfDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 convertible debt securities using the if-converted 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 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 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-42<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 40<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities</td>
</tr>
<tr>
<td style="padding-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_InterestOnConvertibleDebtNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest recognized on convertible debt instrument excluding interest on principal required to be paid in cash.</p></div>
<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><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 40<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestOnConvertibleDebtNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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 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 2: 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 3: 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 4: 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 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 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 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 (f)<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 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 9: 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 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 (a)<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 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<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 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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 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 30: 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 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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_NetIncomeLossAttributableToParentDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, and includes adjustments resulting from the assumption that dilutive convertible securities were converted, options or warrants were exercised, or that other shares were issued upon the satisfaction of certain conditions.</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_NetIncomeLossAttributableToParentDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_NetIncomeLossAvailableToCommonStockholdersBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</p></div>
<a href="javascript:void(0);" onclick="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_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_WeightedAverageNumberOfSharesRestrictedStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 restricted stock determined by relating the portion of time within a reporting period that restricted shares have been outstanding to the total time in that period. Restricted shares are subject to sales, contractual, regulatory or other restrictions that prevent or inhibit the holder from freely disposing of them before the restriction ends.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-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_WeightedAverageNumberOfSharesRestrictedStock</td>
</tr>
<tr>
<td style="padding-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>80
<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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011096160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions - Additional Information (Detail) - Principal Owner - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRent', window );">Rental expense</a></td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.2<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_PrincipalOwnerMember', window );">Minimum | Spectrum Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners', window );">Non controlling ownership interest minimum</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity interest of noncontrolling shareholders, partners or other equity holders in consolidated 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;">us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners</td>
</tr>
<tr>
<td style="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_PaymentsForRent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 payments to lessor's for use of assets under operating leases.</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 25<br> -Subparagraph (g)<br> -SubTopic 10<br> -Topic 230<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_PaymentsForRent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_PrincipalOwnerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_PrincipalOwnerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_OwnershipAxis=rgen_SpectrumIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OwnershipAxis=rgen_SpectrumIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<FILENAME>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094011571600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting - Additional Information (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>Dec. 31, 2022</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_NumberOfOperatingSegments', window );">Number of operating segments | Segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Accounts receivable, percentage by customer</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 141,192<span></span>
</td>
<td class="nump">$ 200,741<span></span>
</td>
<td class="nump">$ 483,021<span></span>
</td>
<td class="nump">$ 614,774<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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Accounts Receivable [Member] | Purolite [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Accounts receivable, percentage by customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.70%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.70%<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 | Accounts Receivable [Member] | Customer Number One [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Accounts receivable, percentage by customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Total Trade Accounts Receivable Royalties And Other Receivables | Purolite [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Accounts receivable, percentage by customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.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 | Minimum [Member] | Sales Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Accounts receivable, percentage by customer</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</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_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/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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 2: 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 3: 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 4: 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 5: 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 6: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 8: 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 9: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=rgen_PuroliteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=rgen_PuroliteMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=rgen_CustomerNumberOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=rgen_CustomerNumberOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>82
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094019330656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting - Percentage of Revenue by Geographic Area (Detail)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</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_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk | Total Revenue | North America</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">42.00%<span></span>
</td>
<td class="nump">44.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_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk | Total Revenue | Europe</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">34.00%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
<td class="nump">36.00%<span></span>
</td>
<td class="nump">38.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_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk | Total Revenue | APAC/Other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">17.00%<span></span>
</td>
<td class="nump">23.00%<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="nump">20.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_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481027/954-310-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_ConcentrationRiskLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GeographicConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_NorthAmericaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_NorthAmericaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=rgen_ApacOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=rgen_ApacOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>83
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140094022541728">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Subsequent Event - Additional Information (Detail) - Subsequent Event - Metenova AB<br> $ in Millions</strong></div></th>
<th class="th">
<div>Oct. 02, 2023 </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_SubsequentEventLineItems', window );"><strong>Subsequent Event [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_BusinessAcquisitionEffectiveDateOfAcquisition1', window );">Business combination date of acquistion</a></td>
<td class="text">Oct.  02,  2023<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAcquiredFromAcquisition', window );">Cash Acquired from Acquisition</a></td>
<td class="nump">$ 173<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_CashAcquiredFromAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 acquisition of business during the period (for example, cash that was held by the acquired 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> -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_CashAcquiredFromAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481674/830-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-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_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_MetenovaAbMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=rgen_MetenovaAbMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>rgen-20230930_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/2023"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2023"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:rgen="http://www.repligencorp.com/20230930"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  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="rgen-20230930.xsd" xlink:type="simple"/>
    <context id="C_85784f19-a202-4d13-99bd-01a270cc879f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_a588eb85-a8e0-422a-9c8a-0205b7e8ee16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_c4545892-7ce6-4242-a05b-e23c3cc4a419">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_aba719ab-7b87-445e-970a-55bd323b25b9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_b09c0f9e-5c51-456f-9957-ffb5fede2034">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_3012615e-9bbf-4cb7-85d5-f097eb6fec6c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_33916c39-0849-428b-9d27-2c65aeb0bff1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_2233bf7e-e68c-491c-9240-9c2c6f972892">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_e2162459-d2f2-4f1d-82c5-8e7e4f62d09a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:PuroliteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_c75dba94-3d35-43ec-9ed5-9da06bf49a5b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_b45b33b5-979b-4ecb-a5f6-02ae2ceaace4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_5bf12700-9d89-42fe-a05e-9eab6a959a44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_8cf25956-fc00-4b82-8e1d-4eea0e5db938">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_53c23e08-45bc-4752-b281-a8c43e64852b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_3724e612-61bd-430a-b202-7aa0f948df3b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">rgen:NonExecutiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_eb79228f-93fc-480b-83ba-2bc57423f132">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rgen:StockOptionAndIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="C_3ee66a6f-df77-4080-8b9b-0df16d166621">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-17</startDate>
            <endDate>2023-04-17</endDate>
        </period>
    </context>
    <context id="C_d81a4437-bb80-4be4-ba91-a5e7069c6c46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_8225936e-5d96-4ffa-b252-e28305f513ba">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-17</startDate>
            <endDate>2023-04-17</endDate>
        </period>
    </context>
    <context id="C_9309f5b7-5f6f-4683-8665-f36d7eec347c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_324df715-cbf3-4103-aadb-9094df374fac">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_4aa55425-0a01-4df8-8aa3-6125e75c9e6f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">rgen:CashAndMoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_abbc99bb-674c-4cde-9869-3bc5c9875a77">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:PuroliteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_8c9b452d-424b-4461-bf60-db4ea582123f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_e042f503-5f54-449d-8702-4997946185d3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_ead61b81-a0b1-4eaa-89e8-0908dd53afd5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_a6e126b9-84d4-4ed8-865f-4a752e5c2725">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_1291ff2c-3a6f-4b4b-a65a-cbd1f72f77d8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ExecutiveOfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_cffd0f39-00b9-4846-8a44-558f550e0943">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_9f8a6274-46f2-432d-b9a1-33f4400d7ebd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_4860c508-dc06-42df-b92f-3a630acf6182">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_efc02b50-9525-4ec9-b3eb-ef2a3b59eac5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="C_11826311-475d-42db-8c63-2231469adce3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_25751d48-53ce-4703-a6df-367c93f42be7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_0364194f-9ad2-4f36-8666-7a7194eed471">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:CustomerNumberOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_323fbe34-7f7b-4bb3-b3cb-66c509c7a295">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_51d8287b-dcef-48fc-883f-8e1c478a2b86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_d7d37b09-d270-4cbb-a9da-f9e9f636fbc8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2022-10-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_cbedbaad-0c9b-428f-afd3-94fc7c3d0e5e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_a0f32af8-bf41-4524-8432-35b4fe4c8f39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_63b32e62-4479-4be9-a171-379efbd3634d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_70d2ee71-05f1-4dbf-b306-8baa2a30b302">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_7bd58d0f-f1e5-46cd-bc3a-4c87d2c45877">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_5237d958-4fb9-4dd4-8035-bfd3df21d36c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_24b3d094-f833-451c-b00d-cc5909ca2b28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_eabc34eb-d459-4a2b-bab3-011dd910bea3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_c7266c47-3f9c-4cd0-b4a6-6df11f50fe30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_823f0961-1e36-4654-ac48-d7ad7ec1e6cb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_5f41dc03-78a6-4cef-9956-f19adad0fb47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_921bbbf7-e99d-47d0-a160-678bbbdb19f8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_b09a2afc-265f-4a83-9a3c-a2923ee317ba">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_cfd97fee-6741-43dc-bf9b-8a0f0b3ff041">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputPriceVolatilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_1e784908-4b51-4615-ac72-38d8f501004d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_a47ca049-a970-400f-b17f-23a2967262f3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_12e9a451-11af-470c-a8dd-46dfa3df6a69">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_85ad93a0-d38a-4255-8513-bef07e087737">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_6d9b48a4-c59f-4247-89dc-85833b05f4df">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_0a020387-8e25-4e88-a3ee-23a02a143298">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_d7584a16-3fab-46d8-9bed-bfd144d60bcd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_b47fc7c0-aa97-483f-954c-6453caaa6da0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputEarnoutDiscountRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_b4f364db-132b-40d2-8982-d6633ec4c788">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_fdc9d1ae-9cae-4a17-92ec-6a882b3569bd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">rgen:NonExecutiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_74b69daa-9fb8-4fbb-9dbf-2e1bb9c47c30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-19</startDate>
            <endDate>2019-07-19</endDate>
        </period>
    </context>
    <context id="C_cd91b63d-890b-47e9-9ad5-3ac68b67252f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-03-04</startDate>
            <endDate>2022-03-04</endDate>
        </period>
    </context>
    <context id="C_1b90f9fc-d292-4406-813d-792497ad018a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_6302ca2f-2211-4af6-82fb-0147adfc8d7b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_05afc143-e2ca-4d16-9905-a872dc0bfdbb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_d057084f-8601-4496-91e9-7fbcf94b4456">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_c164b6cb-58d7-4dd5-b3db-7e5670527c2a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_ffb0abda-eca1-46cd-b1b8-8ae39258300c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_639cc313-9a7c-4dc1-b645-6a131f543337">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_c79687e8-b4de-404a-84b9-20cbdcf033ac">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_4e0b36ec-43f6-4229-8ad1-e5ec31647396">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_13680e01-e354-48b1-b0e0-49543c6d0949">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_f12f96af-4ef6-4036-8af1-c9430b5fc52c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_2d3bdc7d-a42e-4d3e-a455-f05b56dd8ad0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputEarnoutDiscountRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_2a81b44c-85b5-439f-8855-cc98c05915f6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_fc69ac89-a7ff-422d-9cf6-d80cd05875e6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">rgen:InflationReductionActOfTwoThousandTwentyTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-16</startDate>
            <endDate>2022-08-16</endDate>
        </period>
    </context>
    <context id="C_cda1fc68-dcf5-4d3d-b5f4-901572acd667">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_83ad0496-4c4b-4639-8ea5-3812418b1344">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="C_a7514252-0b1a-4c3c-a70e-61af677468b2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_1d05f2a3-476c-492d-a5c4-10483e1f362c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_6d9084c7-b2b0-46e7-a373-50c12bf22ac3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_214729b5-2a82-4056-8ae3-23a22617eab1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_b9fcda26-79f9-4cec-809c-4a8538eb5844">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideAndFlexbiosysMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputProbabilityOfSuccessMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_8f79b075-c9aa-49d4-bf17-8f21bea61eca">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_b83b7f79-eb2d-4463-8d73-431f7ee309b4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-07-31</endDate>
        </period>
    </context>
    <context id="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_9131de4c-ce74-47ff-b625-8f5ef9568d7c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">rgen:CashAndCashEquivalentsAndMoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_78bc408c-ba59-4d1a-a9be-933157c80135">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_4eda6e14-d766-43da-98a6-1b0af1d01966">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_66ee78d4-1501-41f8-8bad-081591c64446">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_809c4263-b3f1-466a-91ad-d90a49cd1f3b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_4dc77df2-3dd3-4d8f-a97f-7de8d7264828">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2023-10-27</instant>
        </period>
    </context>
    <context id="C_300d7e4f-ccf2-4d20-b499-03865151e0ef">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_c8e8dba7-df36-4adf-8206-c18e4a8bd3d2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_145e26ad-9866-4d83-985a-d837ec5e86ae">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:MetenovaAbMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-10-02</startDate>
            <endDate>2023-10-02</endDate>
        </period>
    </context>
    <context id="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_cd0fa4fd-2b07-4bbc-9802-a9683374cc3f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_5f45ba16-985f-4eae-a153-2cd561ae1db1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_efe12117-250c-4685-8a47-747fda96c561">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_bad47599-6652-49f6-bc88-bd914056710b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_5520736f-0037-44d4-9b4c-7378ee9e38c9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_f23a5451-71e9-4709-892a-2715747cf854">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_54886403-e19a-4dfc-99c5-a193e57198e7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_dccc7332-54e7-463e-ad34-788072af7c2c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_edc5bd63-1c87-45d8-b2fd-5640d6402707">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-17</instant>
        </period>
    </context>
    <context id="C_89c4168e-326f-46d9-971e-1071c9bfe989">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="C_db66190a-5326-4a07-b1a9-31b2a75509cc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:PuroliteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">rgen:TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-19</instant>
        </period>
    </context>
    <context id="C_2668adfd-7544-470d-92f5-c9a9606b8fca">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_4990472e-defa-4176-a295-070ee8724fa0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_2c2f62ac-fa5f-4eb3-bf11-7ae904a232cd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_e7591784-590d-4139-89d4-0d5eeed2eceb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_bf2625d5-d558-4316-975c-562ba4835ff4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_ddede146-e39d-42e2-811e-3d451abddc6f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:UnvestedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_c7dac913-7e20-4be0-921c-3b4999696498">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_e4765433-97ed-401e-8926-9e289252220b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">rgen:CashAndMoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_1e720d5e-8b9e-4b94-b885-ee375061b75f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_0b7e0bad-3f4a-41c9-a080-b0efc8569cec">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_0c142833-a43f-447e-b3a8-8a0d080dec86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_1cdbcd11-292d-4c07-b976-f886f65abbcc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_51d37a73-1d8b-4c15-9836-7661a6ef0182">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">rgen:TrademarkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_3b07fa83-c650-4d0d-b745-c9e66a7af009">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">rgen:SpectrumIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_052089cf-3ef1-473e-a7df-afce31271ab0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_ab2e2224-f373-42d1-bd2d-9ccfb549c73e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_827ccb42-4138-495c-a08b-41aaf99d90d9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_3d5ddb9e-aa00-4182-b58c-09394221355b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_41ef690f-1d2f-4809-b6d9-da38ed8a3f7b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ExecutiveOfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_97c83f2b-2677-4fac-993e-34520451f429">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_26186120-7e0f-4c33-a981-c4b12f5ae368">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_fd6d9423-3d7b-419b-937f-32e58d788d1d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_4d2c8145-0800-447b-8bcb-bcadb2866c1a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">rgen:TrademarkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_3039311a-848a-433b-b94b-bb73d3fb5bb8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputEarnoutDiscountRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:ProbabilityWeightedPresentValueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_dfef19f0-4a11-43ab-84a9-91b3b09337ef">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_3e2f918e-895b-479a-b917-22184c12541d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_03f1dedf-5b09-4e09-9c8e-1f6615c13430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_37ad1c18-3905-4747-8acb-2d3e3711075a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_3daf5c5c-4edf-45fb-8e28-01fca25247f6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_e1f2d150-80c4-461e-b196-6c602f098185">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_6099b1e0-951d-4096-8cd0-45f1352a1677">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_b74e52bb-2626-4d31-ae8a-97dd6358650f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_9fae5b8e-0af7-4511-980c-90356dd429ea">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_2c385808-0a00-4606-b941-2ce07f0c914d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_707154c4-f9cf-45d0-9ea3-cd1f8b0fc7ac">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_636b9526-cb85-4246-a319-73b5d8251b39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_703f7c33-5d64-43ae-99f7-80349032df8f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_3d1eada0-7331-48c5-9e0d-9c8a9f571fce">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_ba888aed-dc97-4aeb-80fe-2cd42030c882">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_444af4d9-1a4e-406f-8ea2-ce4eecdaaab3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_18ab726c-4cde-4a85-a8ea-d39f0739d066">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityExitAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_19ac52bd-03cc-41f7-a604-85d57c92d47c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_a7a55267-da21-4945-96dd-90a1ead6dd5d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:ManufacturingLineExpansionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputProbabilityOfSuccessMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_b2e28058-999d-469a-8802-ed7b964035cd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_9ede9dc7-76ee-4a60-8d3d-b7831dd2f586">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_c04f5c43-2713-43eb-a0b0-f639e587c213">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_7c8c0df8-aa3f-453b-8083-8b757da047cb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_0a325822-1e75-48f0-bfe6-37931198fa2a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_adc269c9-6b99-4085-86f1-8d8ded904dec">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:FacilityExitAndOtherExitCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_903609b8-dafb-41ed-89ce-cd3f8437e759">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_0c9331ac-5a9c-43ca-87ee-2e9db469f8b0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_5dbe09cf-f7d1-4d59-a8c0-ff73f2f6afc8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_4205a452-63ed-4b15-bb8d-d8a58e8528c5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_64256d68-98ed-4170-b03f-39dfff90cc5f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">rgen:RevenueAndVolumeBasedPaymentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">rgen:MeasurementInputRevenueVolumeDiscountRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationTechniqueAxis">rgen:MonteCarloSimulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_f859f923-a1d6-484b-a120-fbb36fa356cd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_46cab3c6-b18a-4413-a555-92293dfea9bd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_70523811-ec9c-4099-b492-db439653b382">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="C_1f018b06-14dd-482c-b295-952d4d3f48b1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_44d43283-ca3d-455e-9caa-433c35acd70d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_0f10afd9-4d70-446a-aecb-5ca89dd3f2b6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_16bec3ca-1b09-48b5-8fc5-64ec7fa403c4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:AcceleratedDepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_9a23c019-0476-42a1-bebb-8fef85487d30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_fdeb0a7f-0bac-440a-8977-1826c35bb0b0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="C_7138c14d-581b-4fe8-a592-dfc0496070f4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:AvitideLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-05-31</instant>
        </period>
    </context>
    <context id="C_3d1ad89d-d8d1-4cf9-ab80-18bb03f83d45">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">rgen:StockOptionAndIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_fd1105c0-8b60-471b-af3a-ca9ecebc9472">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_3536ed09-09c6-4e4b-8140-cc2ccd353292">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_d9b1dcb1-9927-4eb9-b054-87234e8e2ba3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_55c86da6-b271-448c-a888-ad8642d1b0b2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_0ed23a08-558e-4162-aad8-2f48177e907a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_c1477456-7b6e-4f58-88ac-6137ee30faad">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:RoyaltyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_dcdf82fc-193a-4298-9486-cc4d6a00907a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_56de56c9-17e8-4a0a-9d37-a1c65d482e15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_00add57c-f99c-46ef-8537-6bd7a775258b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:NorthAmericaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">rgen:ContingentConsiderationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_27bc5ff3-df20-4dd1-939c-d3e0c6c7b5c0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_698ddc08-a965-415e-a40a-374f09d419d8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_b8ef5c7e-f8c6-4f5d-a4c9-5f1b67b8a6b3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">rgen:ApacOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_755445a6-cd7b-433e-8ed9-88c0064de373">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_c7cc198a-634c-4a85-9821-8f902377f89e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_2a837317-8e58-45b6-b3da-840fb7cb9c0a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_4d401095-4107-467d-9745-b9fa041d95fe">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_0008747b-7daf-4d3f-b5d3-4dbf779713e9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_16fe91ab-7cc9-4f23-ad3b-1c6601fd6a2e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="C_a4103be0-35ec-41cb-9972-d87662b0d919">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_26cc2f4e-5b40-4e20-aa2d-001c3d824799">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">rgen:NGLImpactAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_b74f3545-bb1d-46da-b557-40afee4df3f5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:PrincipalOwnerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_09aff2d0-95ff-40b1-a2d7-48262305cd62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:FlexbiosysIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_bebb9618-8aa6-4570-a4f5-0cf5cee32e19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="C_cd4e55d8-a771-4a3f-a1d7-8ea1523e5ffa">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_2d8d1da4-1b3c-43fd-a1a0-d88015ad309c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="C_0e18670b-fdd8-4e65-a456-fbee7920c0b9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate202006Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_13def02c-f3c4-4658-a081-e45beb91156b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">rgen:InventoryWriteOffMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_42ec1346-b9a4-4918-9f08-2f61dd8e7f7f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <unit id="U_UnitedStatesOfAmericaDollarsShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U_pure">
        <measure>pure</measure>
    </unit>
    <unit id="U_shares">
        <measure>shares</measure>
    </unit>
    <unit id="U_Segment">
        <measure>rgen:Segment</measure>
    </unit>
    <unit id="U_Days">
        <measure>rgen:Days</measure>
    </unit>
    <unit id="U_USD">
        <measure>iso4217:USD</measure>
    </unit>
    <dei:DocumentFiscalPeriodFocus
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_8bab6f70-e8fd-440c-9333-088caf6ec80f">Q3</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_9ffa8f58-cf03-4bd6-832e-2b1e391f6bb3">0000730272</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_3e5fce69-ed73-40a9-b7c5-3aaa3c153ed2">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:AmendmentFlag
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_2fc56b72-ab4c-4d4f-847c-83c1baf70682">false</dei:AmendmentFlag>
    <us-gaap:CommitmentsAndContingencies
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      id="F_ff81e153-a650-4ec0-a097-dbe52894c55f"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      id="F_88c8f510-91c2-49ad-a22e-87fe460b1aa6"
      unitRef="U_USD"
      xsi:nil="true"/>
    <dei:DocumentType
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_994e053e-052a-4b98-8b0b-0d053ca67069">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_4f79de9d-185a-4c57-83d5-61c696b0f8b8">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_44995914-bfad-4562-97fb-2f656cc851b1">2023-09-30</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_26ea0c8e-01d0-4161-bb8b-70953a40d634">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_7ed2e4aa-2c02-456f-abc8-eba58302eb13">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_ea70b794-208f-44ba-ae08-e473a5f662ce">000-14656</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_46a4aff5-c82f-446a-8dfc-605c042f9479">REPLIGEN CORP</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_e4e79ce8-1e8a-407a-b8ad-cb1b196fc736">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_1fa0147d-d91d-4864-b00f-2cf8c9cbe8e0">04-2729386</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_272eada0-6a7b-4c77-99cc-59cd8b66e4a7">41 Seyon Street, Bldg. 1, Suite 100</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_d0323ef5-c832-41ce-ad26-9f95d108701a">Waltham</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_15f9d17a-00f8-417b-bb4a-eb3450fc8f17">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_6056aa90-00de-48e1-9a67-43a752cd299a">02453</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_cd169a15-1ec8-4a4b-bf58-89cd492b7c90">781</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_6db3d098-8143-4cf7-95ad-19831a94c3d3">250-0111</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_1a4e35c7-4d35-47e6-8005-aacd2e2a1bc0">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_fd3063ad-f27f-49cd-8f8d-77d0870e94e8">RGEN</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_d38aefea-e572-4b69-b90a-51bc3d7032dc">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_2c1be2d6-2ed9-4fef-bd26-a51a7b779e1f">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_d88b1a40-1259-4225-82be-2607d18afa7c">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_63cd11e9-69c5-40c4-a926-fa36c346f0d8">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_4a4b1c80-7931-4dd2-ad8a-c5cbe58b60b4">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_148315fb-910a-44ca-84e3-2aee3e5614a4">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_38ab0f8a-c988-4d55-bdae-3458980642d8">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="C_4dc77df2-3dd3-4d8f-a97f-7de8d7264828"
      decimals="INF"
      id="F_5f27e57c-95f9-453e-aa43-9e98a8de128f"
      unitRef="U_shares">55832013</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_8b795dcd-6ae0-4cf5-8e20-5ece258922d5"
      unitRef="U_USD">630779000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_98c7ea49-aa14-478f-85bd-c6c55395f528"
      unitRef="U_USD">523458000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:HeldToMaturitySecuritiesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_f25026a4-f2d8-453e-b009-7ba2eb5910fb"
      unitRef="U_USD">0</us-gaap:HeldToMaturitySecuritiesCurrent>
    <us-gaap:HeldToMaturitySecuritiesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_7e99d0c4-9d78-4a0f-8433-017c7266cbcc"
      unitRef="U_USD">100299000</us-gaap:HeldToMaturitySecuritiesCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_622592fd-324f-43b4-a3d9-ace04580e240"
      unitRef="U_USD">1803000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_a5351f0d-d26c-4ade-a2a0-3a370cf83150"
      unitRef="U_USD">1365000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_63682695-974d-4018-899b-886b965f7e6a"
      unitRef="U_USD">106158000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_b01f20a2-96aa-41f5-8b86-8a53a539fd2a"
      unitRef="U_USD">116247000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_bb1f536a-20b1-4e1b-9f05-f2d2086e8ebd"
      unitRef="U_USD">211372000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_acafa938-8e63-4308-b022-98166e2aa0d9"
      unitRef="U_USD">238277000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_57922d9b-61e6-4f66-ab4c-6e2246631402"
      unitRef="U_USD">30147000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_0442c5b5-2696-46a7-98bc-255263ebaf8b"
      unitRef="U_USD">19837000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_be52a979-a16c-45b4-8504-77d168c4042e"
      unitRef="U_USD">978456000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_337afb76-3eec-4de8-8126-576b550bd16a"
      unitRef="U_USD">998118000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_e6f4bd9f-6090-4248-ac2d-683ef118b11a"
      unitRef="U_USD">201618000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_12ecedf4-960f-4170-a6ee-b828c4e19f72"
      unitRef="U_USD">190673000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_d6d2cd8f-b6e8-4a0e-8fe6-48b35dab71ec"
      unitRef="U_USD">343729000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_edcc4d90-7051-4d50-b108-19a807d10f8e"
      unitRef="U_USD">353676000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_4f6cb713-3b07-45b6-9bba-481d66849d9b"
      unitRef="U_USD">869252000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_181c0fb4-df98-4db2-9a26-ed932140f1c4"
      unitRef="U_USD">855513000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_c86f542b-3a88-4e21-9501-e4a987720715"
      unitRef="U_USD">1546000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_2badc98f-4811-4ee3-89c1-08de6ace1d3e"
      unitRef="U_USD">840000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_e92223e7-0cf5-4039-978a-1151f42bdecb"
      unitRef="U_USD">118084000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_bfe9be6f-f961-4c48-bd17-b6018da82508"
      unitRef="U_USD">125023000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_e30cabb2-9305-427a-a652-6446a7ccb043"
      unitRef="U_USD">1444000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_66ddd15b-a9e3-426e-b5ec-4aceea6657ea"
      unitRef="U_USD">815000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_22d18809-ea5a-4bf3-a9ff-17ce4701d8d3"
      unitRef="U_USD">1535673000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_df263014-3d79-48d2-afa6-93ccb9fabf9c"
      unitRef="U_USD">1526540000</us-gaap:AssetsNoncurrent>
    <us-gaap:Assets
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_7b08ccaa-4eb7-45d9-aa04-51372ed4573a"
      unitRef="U_USD">2514129000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_64adb6c8-59f4-4082-8480-366fb3f67985"
      unitRef="U_USD">2524658000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_fe40e137-6d64-4951-9fff-e77a3dfb3243"
      unitRef="U_USD">18961000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_810806f8-403a-4a08-87f7-ffa67228c207"
      unitRef="U_USD">27554000</us-gaap:AccountsPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_32f60ecd-4711-45a3-b816-e46f52c5fb67"
      unitRef="U_USD">3315000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_77b3e8f7-a98e-45da-8605-721557581e63"
      unitRef="U_USD">6957000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_96899831-49cd-4234-be01-b717e1f0297c"
      unitRef="U_USD">12589000</us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_9e6e6f03-229b-4be7-86dd-d14637a7b91f"
      unitRef="U_USD">13950000</us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_4c0e7e81-5145-4ff7-8b18-1cb9da1e9c88"
      unitRef="U_USD">42543000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_c331fb58-85a4-4b58-9cae-e7a97f2d6df1"
      unitRef="U_USD">71120000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ConvertibleNotesPayableCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_1cc6731b-ada3-4383-b298-21c607d7082b"
      unitRef="U_USD">285956000</us-gaap:ConvertibleNotesPayableCurrent>
    <us-gaap:ConvertibleNotesPayableCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_10cbb3b7-2db7-4e80-a2f5-b9d52c7d7cff"
      unitRef="U_USD">284615000</us-gaap:ConvertibleNotesPayableCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_afa64e71-e187-4bc7-a62f-68db8ede3aa9"
      unitRef="U_USD">363364000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_82b4cf0d-8fe9-4547-a2f2-e0e62f88df81"
      unitRef="U_USD">404196000</us-gaap:LiabilitiesCurrent>
    <us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_6108a7fe-739d-4f26-bbc7-e49df32f16b6"
      unitRef="U_USD">14036000</us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent>
    <us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_77c8ac21-5a21-41ff-8522-8a970dc1f24e"
      unitRef="U_USD">23000000</us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_6a714f39-0345-4ad0-895c-b915db76faa6"
      unitRef="U_USD">130615000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_96d89e0c-af4e-4c7f-802e-2848bc5f1438"
      unitRef="U_USD">131389000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_f923a7f6-12f1-41f8-85f1-5ce65cdb5021"
      unitRef="U_USD">13759000</us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_1bdc8837-6073-47c8-bbff-8ce10484fea8"
      unitRef="U_USD">51559000</us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_18d34314-b5f5-45e3-b8b0-3dea5d17d523"
      unitRef="U_USD">3798000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_d7ac22b0-4531-4be8-909b-4d6ca792681d"
      unitRef="U_USD">3814000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_a3cf49ba-eff5-4c3e-822e-6795bdb85a36"
      unitRef="U_USD">162208000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_a9a14027-7efd-4151-baa8-af3519dd8d52"
      unitRef="U_USD">209762000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_c99152d7-c14c-449c-830a-7b7bc6e2dead"
      unitRef="U_USD">525572000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_00094950-8ebe-40e5-83c4-046480f03472"
      unitRef="U_USD">613958000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_13981049-9519-48f1-9214-478a45b3d297"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="2"
      id="F_8f486d71-fd4a-4ee5-9d19-cf5542f72ebb"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_4947e399-7f39-4e73-bcd8-cd50845eb26e"
      unitRef="U_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_bea3139f-0493-4c1e-bced-1d9428088327"
      unitRef="U_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_d349f50f-d83d-4e28-82f3-ce057ba39b33"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_da4dde7d-ce56-47ac-a256-fa2eb2643ee8"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_c29e878c-696d-46f6-9ca8-6f7e7c89a604"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_812e7be4-0f13-45f9-a507-dcbad54e6ba5"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_23cb9dd7-dc32-4d43-879f-2da18d9fd617"
      unitRef="U_USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_dacff335-d5ee-4f33-bef0-ad14b5e6f616"
      unitRef="U_USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_6101d072-ee84-402f-aba0-38899ca9fb87"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="2"
      id="F_216b191e-f841-4f2d-bf0b-ccfb16d8500c"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_122339a3-7746-4243-b4c8-20b831e28da6"
      unitRef="U_shares">80000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_3c9f2630-9daf-434a-bd72-430aeb4f2bd1"
      unitRef="U_shares">80000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_dda0974c-87fe-4a20-83c7-3aa9df04ece8"
      unitRef="U_shares">55774706</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_9e0d4c01-0f1a-4b4a-aae7-892f87cea64d"
      unitRef="U_shares">55774706</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_c32485fb-3547-466a-a696-8ef965fd6230"
      unitRef="U_shares">55557698</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_a479c15e-fa86-48ab-9e77-c28ccfae0f72"
      unitRef="U_shares">55557698</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_acb36b72-0e58-42a5-b51e-4813467432b9"
      unitRef="U_USD">558000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_3256d9d6-ff90-4d1f-bcc3-76f24338814d"
      unitRef="U_USD">556000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_0a23d470-e22a-45c1-87ea-501c80e99761"
      unitRef="U_USD">1567233000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_8e9f2197-f920-491b-8c3d-e68e97e0b566"
      unitRef="U_USD">1547266000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_5e093c6c-5127-4fe9-8369-759f3244c2a6"
      unitRef="U_USD">-43571000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_e08b86ea-4510-4cdf-ab2c-623645b379b5"
      unitRef="U_USD">-34394000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_d0120a6d-6ca9-414b-a917-5ffbdc221aef"
      unitRef="U_USD">464337000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_f8e10420-0738-4f19-827b-a46561bf9d9e"
      unitRef="U_USD">397272000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_a9a9850c-ade8-49ab-9311-d4823d8fcd48"
      unitRef="U_USD">1988557000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_ee556ffb-32fb-4f7f-bad2-2355a8830ce8"
      unitRef="U_USD">1910700000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_248596e8-670b-4ece-9982-1071111aee76"
      unitRef="U_USD">2514129000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_af9ad255-b8d4-4113-b05d-af588209ac7c"
      unitRef="U_USD">2524658000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_bf2625d5-d558-4316-975c-562ba4835ff4"
      decimals="-3"
      id="F_ee6b7b5d-b0be-4d74-a14d-1a1869497339"
      unitRef="U_USD">141156000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_b45b33b5-979b-4ecb-a5f6-02ae2ceaace4"
      decimals="-3"
      id="F_c726f52a-d636-4a6f-a9f7-1c532e96adf5"
      unitRef="U_USD">200708000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_7c8c0df8-aa3f-453b-8083-8b757da047cb"
      decimals="-3"
      id="F_fd9d12ef-8638-48d4-8873-a0b7fe46adc2"
      unitRef="U_USD">482910000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_a6e126b9-84d4-4ed8-865f-4a752e5c2725"
      decimals="-3"
      id="F_65de6e03-f0ae-43b9-ba97-ef888cb83cd8"
      unitRef="U_USD">614668000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_c79687e8-b4de-404a-84b9-20cbdcf033ac"
      decimals="-3"
      id="F_1d3d97f8-c89f-4950-a2a9-1af91102bb43"
      unitRef="U_USD">36000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_b2e28058-999d-469a-8802-ed7b964035cd"
      decimals="-3"
      id="F_20f9615e-4f00-494e-b0af-ad130f94a868"
      unitRef="U_USD">33000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_c1477456-7b6e-4f58-88ac-6137ee30faad"
      decimals="-3"
      id="F_7c2fe62d-5627-4dac-a0e3-c2f187d06962"
      unitRef="U_USD">111000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_12e9a451-11af-470c-a8dd-46dfa3df6a69"
      decimals="-3"
      id="F_0fbc0d65-0e3f-4883-a892-59979d221827"
      unitRef="U_USD">106000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_a8fa7c46-f369-47a1-b8db-91e9edea10ec"
      unitRef="U_USD">141192000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_e611f214-aa02-4358-847e-2be1a8a58f94"
      unitRef="U_USD">200741000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_88c5aace-b3ab-4030-8a70-9b1320ff0e5f"
      unitRef="U_USD">483021000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_13977248-e5e4-48f3-9f17-f23465847033"
      unitRef="U_USD">614774000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_4ac6a937-abb1-4ce9-aeaa-807eb986f8c4"
      unitRef="U_USD">104634000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_3864e534-0f1e-406b-95d0-bde636ca06cf"
      unitRef="U_USD">86514000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_9f47c968-1bfc-4b21-917e-b824cebf207c"
      unitRef="U_USD">265786000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_9ead9c4b-97ac-4811-98fe-6af00500b7c5"
      unitRef="U_USD">255130000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_c7b5d1b7-7042-4f87-a8f6-1a1fb4f4e295"
      unitRef="U_USD">10577000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_3fac5f4e-5ce1-41f7-8309-da38c7f21149"
      unitRef="U_USD">10228000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_1e66cfe8-51cd-45b5-8bff-c545ec906132"
      unitRef="U_USD">32437000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_3fc88618-a73b-4b66-99fe-825743c94373"
      unitRef="U_USD">32823000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_40ef5bd5-9ee4-4434-ac95-db0035397a56"
      unitRef="U_USD">55465000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_fad02bb5-09bd-482c-89ae-b2f4e0caddfc"
      unitRef="U_USD">53643000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_a1d2b533-c44a-4425-befa-a0b771584e7f"
      unitRef="U_USD">160601000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_51c08442-4d16-4598-9ab2-da2d9589f56c"
      unitRef="U_USD">162592000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_294a1547-17ea-496d-b1b3-4aca1afffb0c"
      unitRef="U_USD">-34292000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_b9840732-9710-4e9d-92f9-43d6368281e4"
      unitRef="U_USD">-2309000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_6d2d399e-879f-40b4-9afb-79f52e07580a"
      unitRef="U_USD">-31266000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_2325d863-d0d8-4f78-b2dc-356eed60d50d"
      unitRef="U_USD">-11604000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:CostsAndExpenses
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_014de0ec-38cc-4d79-b69f-8c07f86d86aa"
      unitRef="U_USD">136384000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_37ae5b7b-de93-4744-ba12-779c741a862c"
      unitRef="U_USD">148076000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_98641ca7-6486-41a3-bad1-5edfba9a99f9"
      unitRef="U_USD">427558000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_ad3ad15f-7e98-4500-9371-d9b6e7059c96"
      unitRef="U_USD">438941000</us-gaap:CostsAndExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_cf9a4929-7dfd-48c0-bea7-221b47f931ab"
      unitRef="U_USD">4808000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_eb160883-8cca-4574-8501-1307eddd77e0"
      unitRef="U_USD">52665000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_ee735643-98d8-426c-b8e3-a33bad0e3382"
      unitRef="U_USD">55463000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_15b5a315-17f4-43f3-835c-dc72ed92f0c5"
      unitRef="U_USD">175833000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeNet
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_394f7e9d-23e0-4260-a766-7e9548d1e41d"
      unitRef="U_USD">6662000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InvestmentIncomeNet
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_2a650781-be8a-49d6-ae9b-49477dd78f60"
      unitRef="U_USD">2177000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InvestmentIncomeNet
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_e435e4b8-c039-4306-a310-00a6ea07d714"
      unitRef="U_USD">18112000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InvestmentIncomeNet
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_c70b09f5-0faa-41fa-8f77-e0c2f2dd28e7"
      unitRef="U_USD">2962000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InterestExpense
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_bd3dbd32-a238-431c-a234-8843b7d71509"
      unitRef="U_USD">269000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_76388e83-19f3-41c4-89a5-7d2bc33cf6c0"
      unitRef="U_USD">329000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_9d190698-19b0-493b-9107-ce5d9ff876bc"
      unitRef="U_USD">813000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_386a3713-3e38-4c6c-bbb7-1afef3001b4c"
      unitRef="U_USD">892000</us-gaap:InterestExpense>
    <rgen:AmortizationOfDebtIssuanceCost
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_7860c92d-2772-4c01-88bf-f3aabf4382bf"
      unitRef="U_USD">459000</rgen:AmortizationOfDebtIssuanceCost>
    <rgen:AmortizationOfDebtIssuanceCost
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_ce713342-70fb-42cd-a496-7f34de4cb9f1"
      unitRef="U_USD">455000</rgen:AmortizationOfDebtIssuanceCost>
    <rgen:AmortizationOfDebtIssuanceCost
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_fa8817ed-b737-41b6-b72f-2b7afb0de334"
      unitRef="U_USD">1373000</rgen:AmortizationOfDebtIssuanceCost>
    <rgen:AmortizationOfDebtIssuanceCost
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_4d5cf455-3c18-44ed-92f0-0501fcc88f4b"
      unitRef="U_USD">1360000</rgen:AmortizationOfDebtIssuanceCost>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_16add646-5966-48ab-a45b-e644b7dbdb7b"
      unitRef="U_USD">895000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_ad938326-6d82-4057-b815-98c08bb31d47"
      unitRef="U_USD">-6591000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_6174df35-0d81-4916-bc5a-3f9b0df04856"
      unitRef="U_USD">1500000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_cd884f50-91ad-410c-90ea-6b1dffb8c6c3"
      unitRef="U_USD">-10389000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_05edf51e-13f9-4126-af5a-7ecd4a150ee7"
      unitRef="U_USD">6829000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_af7d5ef6-6c3e-42d5-9b6e-67ff33e5ebd5"
      unitRef="U_USD">-5198000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_d1bb6269-3639-4f80-8905-3817d9f99b19"
      unitRef="U_USD">17426000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_772fdf6b-9a5f-4a46-94f2-2cfe7481644f"
      unitRef="U_USD">-9679000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_2e04c132-c4d2-44e9-b473-d78321b2c851"
      unitRef="U_USD">11637000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_1d506e9c-8842-4f8d-9711-20b6fda2ff17"
      unitRef="U_USD">47467000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_f571e385-262d-41dd-8297-4061786825de"
      unitRef="U_USD">72889000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_cecfbcff-479b-4649-a698-e03c51d2f562"
      unitRef="U_USD">166154000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_a2d85a60-c143-40b9-8625-fbcdf7ec383a"
      unitRef="U_USD">-6535000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_b7a90747-42dc-411c-a9ba-852a60b490bf"
      unitRef="U_USD">7062000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_03ccabea-e833-443d-9eaa-c9427cafdb73"
      unitRef="U_USD">5824000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_ebc5ca55-86a5-4d38-b119-51885dd47317"
      unitRef="U_USD">28924000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_14613035-df43-4da8-a3b7-e9fe2af8eeef"
      unitRef="U_USD">18172000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_8af7f01a-325d-483b-92e6-b051f7fffa71"
      unitRef="U_USD">40405000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_91fce62e-4505-40de-bd22-30e2cf4177f4"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_a7f6b737-5f2c-4822-90c5-ac478a849ece"
      unitRef="U_USD">137230000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="2"
      id="F_f076a51a-0c43-4a43-801c-77a8446545e7"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.33</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="2"
      id="F_264817c8-4fad-4bff-b4e1-923ee0b2e6b1"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.73</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_cb725049-7aea-4f28-9d47-fbcc3cd68b79"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.2</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="2"
      id="F_d0b17260-39b0-435c-bea6-b33406c7ac78"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">2.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="2"
      id="F_8acd6a0e-d204-4e18-975b-6c85687230ab"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.32</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="2"
      id="F_23e6e6cd-8174-4fe4-80fe-6339d322d4bf"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.71</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_f5a1eb38-81af-4b75-8bd6-f56789ea52e9"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.18</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="2"
      id="F_419988de-eadc-4a59-bd40-36b9f509e81a"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">2.39</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_b52f0ff5-4c4e-454a-8876-024c06f9a251"
      unitRef="U_shares">55766</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_c31f8fb1-3977-4c22-a1cb-c7b143df6fe1"
      unitRef="U_shares">55498</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_245091e4-f42a-4240-9307-697ddd5efc87"
      unitRef="U_shares">55688</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_fcd91bc1-d149-4e42-bd27-15a7a4a7b37e"
      unitRef="U_shares">55432</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_997fee7c-16cf-4e90-adf9-792bfcb57bc8"
      unitRef="U_shares">56940</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_5944b8a2-fd8f-4dbc-ac1a-163bf3db9bd5"
      unitRef="U_shares">57304</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_5519d2fa-daa7-49e5-a23d-54977dd93506"
      unitRef="U_shares">56933</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_d66fc905-446d-443f-8329-f092ea697a6b"
      unitRef="U_shares">57598</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_c946cdba-5803-4fde-a28f-8f88f0cc02b9"
      unitRef="U_USD">18172000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_8a128f1b-e03d-4c32-b0bb-1652aa7add6a"
      unitRef="U_USD">40405000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_352aa657-3809-42f0-8c35-88c8256eae1d"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_0ec5d05c-2c76-454c-b264-f4d5a4a26373"
      unitRef="U_USD">137230000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_1f4cb616-4ea9-444a-a522-647b3b961479"
      unitRef="U_USD">-6382000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_62f95b82-5d9e-4660-a235-fc5f68968d47"
      unitRef="U_USD">-18170000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_51adac27-23ef-48ba-a4b3-705787b49e1e"
      unitRef="U_USD">-9177000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_af3455ff-df29-445c-a628-352f648bee4d"
      unitRef="U_USD">-38375000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_83ab30d5-a6d8-4ae3-82e5-93e11ffd91fb"
      unitRef="U_USD">11790000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_b629b2db-39e8-46f6-879f-b7c9ab7651a7"
      unitRef="U_USD">22235000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_9fdd452c-5148-4ebc-b344-f71a3d487113"
      unitRef="U_USD">57888000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_b5eedb45-997b-4a4d-a862-167d3f1abaa8"
      unitRef="U_USD">98855000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="C_cbedbaad-0c9b-428f-afd3-94fc7c3d0e5e"
      decimals="INF"
      id="F_657cfe4b-cfaf-41ee-bb40-e005bcc39c0f"
      unitRef="U_shares">55744896</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_cbedbaad-0c9b-428f-afd3-94fc7c3d0e5e"
      decimals="-3"
      id="F_a4962619-8647-4555-9577-b8251ceb244f"
      unitRef="U_USD">557000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_8c9b452d-424b-4461-bf60-db4ea582123f"
      decimals="-3"
      id="F_123600a3-f1ad-447a-bd2a-73f71b766476"
      unitRef="U_USD">1561393000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_e1f2d150-80c4-461e-b196-6c602f098185"
      decimals="-3"
      id="F_3501d18f-2649-4eb8-bb21-d554fa60c69e"
      unitRef="U_USD">-37189000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4d401095-4107-467d-9745-b9fa041d95fe"
      decimals="-3"
      id="F_f0ecb70d-e16e-4123-b29c-007fe9db4d2e"
      unitRef="U_USD">446165000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4eda6e14-d766-43da-98a6-1b0af1d01966"
      decimals="-3"
      id="F_655e3a8f-9c4a-4af9-b8de-da49cc57a2c2"
      unitRef="U_USD">1970926000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_1f018b06-14dd-482c-b295-952d4d3f48b1"
      decimals="-3"
      id="F_3896b42e-56d9-47aa-b628-d5c64955db39"
      unitRef="U_USD">18172000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_1b339eaf-a5d1-455f-85a7-8e45fcc74276"
      unitRef="U_USD">18172000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits
      contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4"
      decimals="INF"
      id="F_a0edaecd-d7ea-4e7c-85b0-c4cb13305eaf"
      unitRef="U_shares">2</us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892"
      decimals="-3"
      id="F_6849781c-7e45-4422-83e0-a716dcc5e9de"
      unitRef="U_USD">-10000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_404647fc-821b-4374-8baa-ee722564c9d2"
      unitRef="U_USD">-10000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4"
      decimals="INF"
      id="F_7fed6f05-f25d-449c-9273-d975109cc3d3"
      unitRef="U_shares">36195</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4"
      decimals="-3"
      id="F_d57e73ba-3aa1-4b05-8b44-b8a3df29b994"
      unitRef="U_USD">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892"
      decimals="-3"
      id="F_3cb7b6cc-2a31-404c-ba6e-d58139caa268"
      unitRef="U_USD">293000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_c66241d7-23c1-4469-ac25-516d5ebc2f18"
      unitRef="U_USD">294000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4"
      decimals="INF"
      id="F_2aabda8a-8c85-44f1-a926-678b8c374c36"
      unitRef="U_shares">6387</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_ad1bd64e-c3c9-4079-9528-3b535925e2f4"
      decimals="-3"
      id="F_6d4db4b2-825d-4307-82f8-c57d7b171412"
      unitRef="U_USD">0</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892"
      decimals="-3"
      id="F_66af8d0d-b510-4520-8d04-9b194741f916"
      unitRef="U_USD">1038000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_b38a7220-bbe5-42ff-98bf-4b36d57a8c14"
      unitRef="U_USD">1038000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892"
      decimals="-3"
      id="F_2723c9a4-7b2e-431d-a2f7-9390d865f91c"
      unitRef="U_USD">222000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_c6fe6536-eb50-41d3-96b1-f11849d18cab"
      unitRef="U_USD">222000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_2233bf7e-e68c-491c-9240-9c2c6f972892"
      decimals="-3"
      id="F_4f1a3251-6242-4ab2-96c1-0309d4364ab2"
      unitRef="U_USD">6373000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_cf5962d4-6825-43c5-af6f-15cce3f1f3c5"
      unitRef="U_USD">6373000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_e1f2d150-80c4-461e-b196-6c602f098185"
      decimals="-3"
      id="F_9743379c-a01d-4a62-9505-b3e580eb9ebf"
      unitRef="U_USD">-6382000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_4eda6e14-d766-43da-98a6-1b0af1d01966"
      decimals="-3"
      id="F_29ecd8e7-f1a9-4379-bc43-812829eb59e7"
      unitRef="U_USD">-6382000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e"
      decimals="INF"
      id="F_a408a855-1ba4-4f82-92cb-bc4d1632a483"
      unitRef="U_shares">55774706</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e"
      decimals="-3"
      id="F_e2f31890-34d8-4b06-9f09-fa6814f41a57"
      unitRef="U_USD">558000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_1b90f9fc-d292-4406-813d-792497ad018a"
      decimals="-3"
      id="F_23759e93-067d-4d6b-8359-4df7877e9953"
      unitRef="U_USD">1567233000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3536ed09-09c6-4e4b-8140-cc2ccd353292"
      decimals="-3"
      id="F_fab143eb-1072-4a8f-b8ff-2c6adc8bb43d"
      unitRef="U_USD">-43571000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_0c9331ac-5a9c-43ca-87ee-2e9db469f8b0"
      decimals="-3"
      id="F_444ba81c-dbb8-4e49-8fb3-d7054c3a1f87"
      unitRef="U_USD">464337000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_4380640a-2ffa-4899-b939-7a895635c57b"
      unitRef="U_USD">1988557000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="C_edc5bd63-1c87-45d8-b2fd-5640d6402707"
      decimals="INF"
      id="F_8bb3ac16-2545-462c-acac-86f11bf5098a"
      unitRef="U_shares">55465918</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_edc5bd63-1c87-45d8-b2fd-5640d6402707"
      decimals="-3"
      id="F_14d152b1-ad83-4b9f-a843-1758f5b5bdcd"
      unitRef="U_USD">555000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_bebb9618-8aa6-4570-a4f5-0cf5cee32e19"
      decimals="-3"
      id="F_bea53c3b-fd15-484a-aa4c-bb8b74d9017a"
      unitRef="U_USD">1533762000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_89c4168e-326f-46d9-971e-1071c9bfe989"
      decimals="-3"
      id="F_c4e9e15d-d3f9-4498-86af-c331dcdcbd32"
      unitRef="U_USD">-37091000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_fdeb0a7f-0bac-440a-8977-1826c35bb0b0"
      decimals="-3"
      id="F_dd1c14cb-bd5f-40de-bcef-453fb5fdcfa1"
      unitRef="U_USD">308138000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_83ad0496-4c4b-4639-8ea5-3812418b1344"
      decimals="-3"
      id="F_c3af94db-5396-4fea-95bf-c6881b293a15"
      unitRef="U_USD">1805364000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_3d1eada0-7331-48c5-9e0d-9c8a9f571fce"
      decimals="-3"
      id="F_02f4238b-7942-401d-ab86-0f6c7030d12e"
      unitRef="U_USD">40405000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_b10dec26-9b00-45c0-a5d1-8aba79e5d4d7"
      unitRef="U_USD">40405000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits
      contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368"
      decimals="INF"
      id="F_e2e0cf87-339e-484e-9152-28191f5b75f9"
      unitRef="U_shares">3</us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368"
      decimals="-3"
      id="F_f3a59e4e-d5d1-4ccf-86f4-4749524b1d41"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd"
      decimals="-3"
      id="F_4ee77b16-f479-4f18-8034-488669b8263a"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_fe50bfec-5f9a-49a3-8ee2-485b4a23c7a2"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368"
      decimals="INF"
      id="F_a8c100de-110e-4c33-9d5a-8c48fb1ea496"
      unitRef="U_shares">59112</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368"
      decimals="-3"
      id="F_18be8e00-1394-4741-9f7b-eb821112208c"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd"
      decimals="-3"
      id="F_0233bb03-bedc-4405-ab6a-6322998225f0"
      unitRef="U_USD">2321000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_75ceba3b-70f0-4e57-afc4-e9ef196a5113"
      unitRef="U_USD">2321000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368"
      decimals="INF"
      id="F_a26f9e92-9b98-434e-aa36-414281de4f1a"
      unitRef="U_shares">5387</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_26186120-7e0f-4c33-a981-c4b12f5ae368"
      decimals="-3"
      id="F_74c46620-6b22-4b0c-97f5-c8bf3515882c"
      unitRef="U_USD">0</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd"
      decimals="-3"
      id="F_f760519c-7027-4791-8f18-0215ed248da3"
      unitRef="U_USD">1070000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_b69d9eee-695c-424d-a310-a2109b9e2488"
      unitRef="U_USD">1070000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd"
      decimals="-3"
      id="F_9b6b025e-377a-47d9-957b-56f112358e6c"
      unitRef="U_USD">6154000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_805d2b1e-1389-4279-a920-84f3f17270d9"
      unitRef="U_USD">6154000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_89c4168e-326f-46d9-971e-1071c9bfe989"
      decimals="-3"
      id="F_50ae78f8-02c4-49fc-a99a-c612f2755e92"
      unitRef="U_USD">-18170000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_83ad0496-4c4b-4639-8ea5-3812418b1344"
      decimals="-3"
      id="F_ceafc1dc-ef17-4891-92cb-b87aaf777535"
      unitRef="U_USD">-18170000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalOther
      contextRef="C_1bd37cec-734e-4d0d-9c1b-4a65289ea3dd"
      decimals="-3"
      id="F_c01fb127-1e50-4e6b-b1b6-25ab8621f883"
      unitRef="U_USD">105000</us-gaap:AdjustmentsToAdditionalPaidInCapitalOther>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalOther
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_17262f2d-fd6b-48e3-9d3b-49b0a6ba88ff"
      unitRef="U_USD">105000</us-gaap:AdjustmentsToAdditionalPaidInCapitalOther>
    <us-gaap:SharesOutstanding
      contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d"
      decimals="INF"
      id="F_7fba03d8-d6b4-49c6-9b07-ddf17012a931"
      unitRef="U_shares">55519646</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d"
      decimals="-3"
      id="F_edce18dd-9e20-44f2-a487-359cffbee8f4"
      unitRef="U_USD">555000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_2a81b44c-85b5-439f-8855-cc98c05915f6"
      decimals="-3"
      id="F_058cb58f-006d-4ecc-9423-b738ef8ee6e3"
      unitRef="U_USD">1541272000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_7bd58d0f-f1e5-46cd-bc3a-4c87d2c45877"
      decimals="-3"
      id="F_83b709ac-192f-4d24-94e6-2afd4b65da9f"
      unitRef="U_USD">-55261000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b4f364db-132b-40d2-8982-d6633ec4c788"
      decimals="-3"
      id="F_28dddd92-beba-4e53-b6cc-19bddde3b03c"
      unitRef="U_USD">348543000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737"
      decimals="-3"
      id="F_354f73aa-8eca-47aa-8a39-eda69b0eb0e8"
      unitRef="U_USD">1835109000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="C_70d2ee71-05f1-4dbf-b306-8baa2a30b302"
      decimals="INF"
      id="F_38b3e4e7-dbae-4328-b894-0c7d051d761a"
      unitRef="U_shares">55557698</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_70d2ee71-05f1-4dbf-b306-8baa2a30b302"
      decimals="-3"
      id="F_8f2e31ff-8d5b-4e25-8945-47d74c06386c"
      unitRef="U_USD">556000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_c8e8dba7-df36-4adf-8206-c18e4a8bd3d2"
      decimals="-3"
      id="F_1f5a1cff-6af2-4c03-9393-f83a0fc1b305"
      unitRef="U_USD">1547266000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4990472e-defa-4176-a295-070ee8724fa0"
      decimals="-3"
      id="F_249ca79f-57c6-42c1-bc88-7b91c11db41b"
      unitRef="U_USD">-34394000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_85784f19-a202-4d13-99bd-01a270cc879f"
      decimals="-3"
      id="F_08d411bf-80a0-417e-9fe5-53cbf1a82561"
      unitRef="U_USD">397272000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_b4e5cc70-5a9a-4887-bafe-3eefacbe66dd"
      unitRef="U_USD">1910700000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_9f8a6274-46f2-432d-b9a1-33f4400d7ebd"
      decimals="-3"
      id="F_e948edda-26c5-4bec-87a4-02c5cb8adb6a"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_991906d6-0a82-4a4b-9fc4-0a294277d4ef"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="INF"
      id="F_0031c4e9-1e05-4351-8ecb-78b59eb63a87"
      unitRef="U_shares">8</us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="-3"
      id="F_0dbb2b7e-1e81-4da1-95a0-b8008a28f9ca"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"
      decimals="-3"
      id="F_ec15ae12-0d70-4dea-b639-097ea0645da7"
      unitRef="U_USD">-13000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_d8ea388a-76be-4f77-bf3d-e1e2ae21cf2f"
      unitRef="U_USD">-13000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="INF"
      id="F_9f245f4b-7649-443b-9f0d-03318f9f93bd"
      unitRef="U_shares">212589</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="-3"
      id="F_8dcfdbc6-b7ca-4db8-9954-a02df6369c85"
      unitRef="U_USD">3000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"
      decimals="-3"
      id="F_74354c30-a4d5-4074-8e21-681580d0e972"
      unitRef="U_USD">353000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_50d2b55d-da12-4e57-8dbf-1899560e527c"
      unitRef="U_USD">356000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="INF"
      id="F_86ff52e4-b7d2-4fea-af9c-12cb4e666000"
      unitRef="U_shares">69625</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="-3"
      id="F_c5d3d2c4-936f-4eca-8019-5781b34c32b5"
      unitRef="U_USD">1000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"
      decimals="-3"
      id="F_ed3454fd-c619-42bc-b531-e1613eba5233"
      unitRef="U_USD">12177000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_09673de2-98e7-44f3-9724-8cfd2f166719"
      unitRef="U_USD">12178000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="0"
      id="F_20e2e78f-19eb-487d-ba27-55ff0f0541fb"
      unitRef="U_shares">31415</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="-3"
      id="F_547a6b7f-7c9c-4d64-9107-fec4e7cb3304"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"
      decimals="-3"
      id="F_dbeb4612-e0e0-4362-9b31-eb7ceb8b88d2"
      unitRef="U_USD">5465000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_ffd6a154-0075-454d-abf3-e11cad724d68"
      unitRef="U_USD">5465000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <rgen:StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="0"
      id="F_3c70342a-2f60-43e5-80b3-9946b865033d"
      unitRef="U_USD">42621</rgen:StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment>
    <rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment
      contextRef="C_1d05f2a3-476c-492d-a5c4-10483e1f362c"
      decimals="-3"
      id="F_7d2d8820-707f-407e-bff8-97feea32e1a9"
      unitRef="U_USD">0</rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment>
    <rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment
      contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"
      decimals="-3"
      id="F_bbdf3eab-7652-49f9-89fb-1fb47aebf335"
      unitRef="U_USD">7229000</rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment>
    <rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_106fa0ed-7a54-449f-a178-fb93dd4e5cdc"
      unitRef="U_USD">7229000</rgen:StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_fa8fa565-c9f1-4e5d-9464-48e5122ee4f5"
      decimals="-3"
      id="F_5211cf47-3310-41ff-b681-2f9a414e5d1c"
      unitRef="U_USD">19110000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_58ca6fa5-c4e4-42c8-98e8-c1fd4fb31da7"
      unitRef="U_USD">19110000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_4990472e-defa-4176-a295-070ee8724fa0"
      decimals="-3"
      id="F_674a5137-c2ac-4989-bfdb-778ae34bf80b"
      unitRef="U_USD">-9177000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_94e40e74-b9e1-4ea4-a4fc-2841b79f35de"
      unitRef="U_USD">-9177000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e"
      decimals="INF"
      id="F_faa13645-98ff-42c6-af35-5a7fb2eeb4ae"
      unitRef="U_shares">55774706</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_7cd26b55-43ef-450a-b3ca-bb7c56a8169e"
      decimals="-3"
      id="F_1f4e444e-32f9-4dc2-8966-91c3ca3ce7b4"
      unitRef="U_USD">558000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_1b90f9fc-d292-4406-813d-792497ad018a"
      decimals="-3"
      id="F_56180200-dc22-4b19-a703-88d82b49d233"
      unitRef="U_USD">1567233000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3536ed09-09c6-4e4b-8140-cc2ccd353292"
      decimals="-3"
      id="F_1d86e396-78b6-467d-98e8-97079aeb12fd"
      unitRef="U_USD">-43571000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_0c9331ac-5a9c-43ca-87ee-2e9db469f8b0"
      decimals="-3"
      id="F_1b70b055-b966-4d24-8600-efdfe6ae8233"
      unitRef="U_USD">464337000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_d2d9dbc6-261b-4b8f-849b-44b7dc83efbd"
      unitRef="U_USD">1988557000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="C_0f10afd9-4d70-446a-aecb-5ca89dd3f2b6"
      decimals="INF"
      id="F_2bf662e9-d1e9-4840-8ea8-169008eeea1c"
      unitRef="U_shares">55321457</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_0f10afd9-4d70-446a-aecb-5ca89dd3f2b6"
      decimals="-3"
      id="F_5b977766-29c2-4bcd-8409-2c724886b0d3"
      unitRef="U_USD">553000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b74e52bb-2626-4d31-ae8a-97dd6358650f"
      decimals="-3"
      id="F_b7a16200-01ac-42e8-aab8-bae6f460eab5"
      unitRef="U_USD">1572340000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_44d43283-ca3d-455e-9caa-433c35acd70d"
      decimals="-3"
      id="F_d25c8c3a-17e8-49ce-a4d7-97966f543f4a"
      unitRef="U_USD">-16886000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_11826311-475d-42db-8c63-2231469adce3"
      decimals="-3"
      id="F_fd5849cf-d8b7-4f50-9e75-7bfbb274f323"
      unitRef="U_USD">194060000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd"
      decimals="-3"
      id="F_8e129da1-2755-4c37-8ded-d7a1341b0462"
      unitRef="U_USD">1750067000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_70523811-ec9c-4099-b492-db439653b382"
      decimals="-3"
      id="F_55a33dac-6ab5-481a-9bd9-0597de0426db"
      unitRef="U_USD">-39070000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4e0b36ec-43f6-4229-8ad1-e5ec31647396"
      decimals="-3"
      id="F_26a7f0ac-fa82-4c87-8a72-b6d5282c1d25"
      unitRef="U_USD">17253000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_e042f503-5f54-449d-8702-4997946185d3"
      decimals="-3"
      id="F_869c8c5a-fcf3-40a4-aa4d-ce03a5e1a3bf"
      unitRef="U_USD">-21817000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_214729b5-2a82-4056-8ae3-23a22617eab1"
      decimals="-3"
      id="F_e89cc280-ad18-41b8-9357-170ae0b0a691"
      unitRef="U_USD">137230000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_6581b300-d37d-41a7-8afd-425ee18ec26b"
      unitRef="U_USD">137230000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits
      contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182"
      decimals="INF"
      id="F_e6f11ef0-5b45-44c6-baeb-dd79a27013dc"
      unitRef="U_shares">15</us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182"
      decimals="-3"
      id="F_7f1bf00b-663b-46b7-8203-050113efae73"
      unitRef="U_USD">0</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4"
      decimals="-3"
      id="F_91def8c1-3761-414b-a48a-00972a5f8746"
      unitRef="U_USD">-5000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_db2dd2e7-25bc-48a7-a93a-43e3a4369a01"
      unitRef="U_USD">-5000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182"
      decimals="INF"
      id="F_23c83cc5-2335-48ba-8f6c-d1a352180200"
      unitRef="U_shares">281839</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182"
      decimals="-3"
      id="F_38e87d4b-f04e-4331-92e4-73e0b17b9d47"
      unitRef="U_USD">3000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4"
      decimals="-3"
      id="F_d9bf89e4-49d8-413f-a783-90f0c4fba0aa"
      unitRef="U_USD">2781000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_caad56e1-149f-4755-b73f-575e028e7e11"
      unitRef="U_USD">2784000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182"
      decimals="INF"
      id="F_5fa79775-12ce-4e30-8697-4300f32f8dba"
      unitRef="U_shares">83665</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_4860c508-dc06-42df-b92f-3a630acf6182"
      decimals="-3"
      id="F_173a9cb2-ddaf-48b8-af00-dfbe2c7345de"
      unitRef="U_USD">1000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4"
      decimals="-3"
      id="F_9509c5b7-4a98-4654-a3fa-6d35d991429e"
      unitRef="U_USD">15828000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_77046a47-6888-4f72-b6f7-ec4926d3885d"
      unitRef="U_USD">15829000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_19f4bc13-00e5-4a40-9c8e-5eb0777b17a4"
      decimals="-3"
      id="F_eef19c78-8d8f-48bf-b1b0-6a9f1365ed70"
      unitRef="U_USD">21054000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_018317cb-a5e6-4054-95c6-b88523b21370"
      unitRef="U_USD">21054000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_44d43283-ca3d-455e-9caa-433c35acd70d"
      decimals="-3"
      id="F_cc501841-c833-4676-9966-f1f4953d34e9"
      unitRef="U_USD">-38375000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd"
      decimals="-3"
      id="F_efda85cb-5744-430d-b780-5a87c93cf87e"
      unitRef="U_USD">-38375000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d"
      decimals="INF"
      id="F_70aad2ba-7427-40b2-bc62-edcc9a861f52"
      unitRef="U_shares">55519646</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_fd6d9423-3d7b-419b-937f-32e58d788d1d"
      decimals="-3"
      id="F_6c97353b-1051-432a-9376-49a8597195f3"
      unitRef="U_USD">555000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_2a81b44c-85b5-439f-8855-cc98c05915f6"
      decimals="-3"
      id="F_f23721fb-448b-4939-b893-01e77551a412"
      unitRef="U_USD">1541272000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_7bd58d0f-f1e5-46cd-bc3a-4c87d2c45877"
      decimals="-3"
      id="F_fac6565f-f8a9-40e4-8f5a-473089eb4264"
      unitRef="U_USD">-55261000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b4f364db-132b-40d2-8982-d6633ec4c788"
      decimals="-3"
      id="F_d51e0e1e-efe2-454b-b3d2-5b23e57f6e77"
      unitRef="U_USD">348543000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737"
      decimals="-3"
      id="F_a02a3a40-1eb7-4e3d-b38e-15aeb3eb4755"
      unitRef="U_USD">1835109000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_34d62880-bd58-4ede-a61f-d4b7275b828d"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_5fbd3a3c-97b4-47f7-9946-697e67eaa44c"
      unitRef="U_USD">137230000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_73b578e6-7fd2-4689-adce-041d2559b158"
      unitRef="U_USD">50942000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_940da350-5f3b-4a10-a9b8-bb6bd201c2f9"
      unitRef="U_USD">36605000</us-gaap:DepreciationAndAmortization>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_b78a644a-f9fe-48c8-bdd0-4ab14e77d9be"
      unitRef="U_USD">1373000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_653b1295-eafe-4e89-9982-ab0238c1f5d9"
      unitRef="U_USD">1360000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:ShareBasedCompensation
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_08650a39-b24f-4d6f-8092-8a53246b8642"
      unitRef="U_USD">19110000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_e02eeb8d-5ed8-44fd-b212-f1fcd0e86dc4"
      unitRef="U_USD">21054000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_865f815a-e24b-4b7a-b3d3-de4643afc791"
      unitRef="U_USD">-9756000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_30440e24-d1f2-40d4-86a9-4c7185af70fb"
      unitRef="U_USD">1722000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_e737eefd-2f60-4f41-86be-12be9d9cf62d"
      unitRef="U_USD">-31266000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_ea8ef7d1-ced1-4945-add5-65eb344a31f3"
      unitRef="U_USD">-11604000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <rgen:NoncashInterestIncome
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_37792ddf-76f4-40b6-aeed-0c15723e17ed"
      unitRef="U_USD">2023000</rgen:NoncashInterestIncome>
    <rgen:NoncashInterestIncome
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_bce365b2-2fd2-4521-b8e7-7bb8923da9d5"
      unitRef="U_USD">0</rgen:NoncashInterestIncome>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_b214adea-08cf-4aad-b55b-03ddd0ea46e1"
      unitRef="U_USD">-861000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_480febae-7ab8-439f-8f07-6cc9c1831ca9"
      unitRef="U_USD">-210000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_301052d6-1753-4ae5-a68c-2859fb1cbe8d"
      unitRef="U_USD">-8315000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_efbdfed0-a700-4c79-8fea-d3357e3ac125"
      unitRef="U_USD">8609000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_c14c5ba7-01bd-4f86-be9d-a9cf3b17ef94"
      unitRef="U_USD">-25979000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_7d9c1de4-45e0-461f-944f-b99a4bf18aab"
      unitRef="U_USD">64308000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_e31a4f4f-005f-42f8-8170-945ee2e6bb1c"
      unitRef="U_USD">10733000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_e7bfa348-02b3-49a9-bc2b-130c785baf2e"
      unitRef="U_USD">-168000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_b3701901-6598-4f72-9fcb-20484197db18"
      unitRef="U_USD">-10203000</rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset>
    <rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_c1a97f82-e44d-4390-bc8a-e5030c7d8f97"
      unitRef="U_USD">22033000</rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_1f0b53de-589f-42c9-b96b-eb81d42cb56b"
      unitRef="U_USD">707000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_75fd1d23-2196-41d2-933f-442816779707"
      unitRef="U_USD">298000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_d77d2513-8caf-44a3-af4c-b430d6e1ac99"
      unitRef="U_USD">-8619000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_5cbffad9-9710-42fa-bd5b-0ea4a512c434"
      unitRef="U_USD">-10124000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_46b9d271-f891-4d17-9604-c739283b913c"
      unitRef="U_USD">-28294000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_45a30a91-43f7-43ff-ab13-3776b4ba27a7"
      unitRef="U_USD">3043000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_b344fe34-d1e6-46e6-9ea0-e06464538dc6"
      unitRef="U_USD">-7676000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_40d58134-ca6c-4263-a117-b6797a14ddb4"
      unitRef="U_USD">26157000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_315ed5b7-763f-4b7c-917b-4c541915af2b"
      unitRef="U_USD">79000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_4a83a3e5-f838-440d-b4e9-c98f119fe9ec"
      unitRef="U_USD">-372000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_f1a07dcc-0678-43a4-a03e-d3bb63951ab1"
      unitRef="U_USD">84853000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_b6980024-167a-48e5-8177-de4b2784cde4"
      unitRef="U_USD">110201000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_a43a9701-a0a9-412e-ba68-2f1c1f50d744"
      unitRef="U_USD">27843000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_2662b00e-214c-4f4f-bdad-d0b2345ea5ae"
      unitRef="U_USD">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_d6159729-8441-4d82-814a-3b56f71db4f9"
      unitRef="U_USD">102323000</us-gaap:ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_61dcb97c-aab0-4548-b458-b41b2f51c007"
      unitRef="U_USD">0</us-gaap:ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities>
    <us-gaap:PaymentsToAcquireSoftware
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_b3108553-815a-4d64-9347-f69fe575e6e4"
      unitRef="U_USD">2736000</us-gaap:PaymentsToAcquireSoftware>
    <us-gaap:PaymentsToAcquireSoftware
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_e0644542-19f1-4136-a1a5-596eb4ad0ef1"
      unitRef="U_USD">2568000</us-gaap:PaymentsToAcquireSoftware>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_04f19d35-4acf-47cd-92b8-3422729580cd"
      unitRef="U_USD">25135000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_eb20ef1a-da7e-4b73-805b-c107766bb63c"
      unitRef="U_USD">64390000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_3ea11fab-6fb0-4afb-b33c-c5fdabfe59aa"
      unitRef="U_USD">0</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_8da13f43-54dd-4eba-a1b8-504cf2ce1d01"
      unitRef="U_USD">45000000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_ba705a3e-8059-454f-964e-321c37c078b0"
      unitRef="U_USD">-21000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_4fd0b53c-44c8-4d5e-b3aa-4b1f4e739769"
      unitRef="U_USD">-30000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_efdace63-0cb9-4034-8b6c-86d03b1f4af3"
      unitRef="U_USD">46630000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_e3f1c8c1-1a21-4841-b0b0-96079b396b41"
      unitRef="U_USD">-111928000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_a4f04bd5-605a-4f8c-8402-b51c993f1c78"
      unitRef="U_USD">356000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_585b1999-df82-4944-b674-3212a5bcfdb9"
      unitRef="U_USD">2784000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_caf60948-73bf-4373-9239-0e870566a4cf"
      unitRef="U_USD">12178000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_6dbf4058-6718-40f1-8daf-122f85bb0ae9"
      unitRef="U_USD">15829000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:RepaymentsOfConvertibleDebt
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_9b05a1a0-8c2f-41ab-8f9c-321841bf4cb2"
      unitRef="U_USD">33000</us-gaap:RepaymentsOfConvertibleDebt>
    <us-gaap:RepaymentsOfConvertibleDebt
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_c33c56aa-69ca-4e25-85db-bfb86d446f60"
      unitRef="U_USD">18000</us-gaap:RepaymentsOfConvertibleDebt>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_5f2884d8-0ef7-4bce-9446-88ff0d75bea2"
      unitRef="U_USD">7298000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_dc742afa-478c-47b1-a401-24749e7c774d"
      unitRef="U_USD">0</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_2cc59476-8608-448e-a3e3-a66266ca0dde"
      unitRef="U_USD">-13000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_1adeca43-1491-4883-bc5f-6eb460fb532e"
      unitRef="U_USD">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_f8c9a2d8-fe8a-4a56-95fb-642f92dbf1f4"
      unitRef="U_USD">-19166000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_7aa9ec9e-e71b-444f-aa81-fe0a994ee406"
      unitRef="U_USD">-13063000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_41a77670-ac5e-4d0e-bdce-16b009ab0bda"
      unitRef="U_USD">-4996000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_ad689e6d-0539-4808-93a4-63cb2a278df6"
      unitRef="U_USD">-15661000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_51a7c50f-5fa4-43d9-b250-f7a39046b5fd"
      unitRef="U_USD">107321000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_7da2f527-e8bb-4035-b650-31317d19cb51"
      unitRef="U_USD">-30451000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_42b17f43-5fb5-4f04-b31b-7432a0b76af1"
      unitRef="U_USD">523458000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd"
      decimals="-3"
      id="F_be4620c3-e185-49b9-938c-6a472b8ae6e8"
      unitRef="U_USD">603814000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_0230da14-ed1f-4b59-a967-c6d5d637d8f7"
      unitRef="U_USD">630779000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737"
      decimals="-3"
      id="F_c1faf473-9de9-49c9-841b-575a9527b779"
      unitRef="U_USD">573363000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_3f850510-3cf5-476e-8fa6-742a07962964"
      unitRef="U_USD">1129000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_12004f78-c4f8-4074-9ded-1ba80ebaa395"
      unitRef="U_USD">25705000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      decimals="INF"
      id="F_2cc4f549-50eb-45fe-bdb9-aae2f25c3c6c"
      unitRef="U_shares">31415</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <us-gaap:StockIssued1
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      decimals="-3"
      id="F_dcdd6af9-801a-43b0-ae34-c882a29b0476"
      unitRef="U_USD">5465000</us-gaap:StockIssued1>
    <us-gaap:StockIssued1
      contextRef="C_19ac52bd-03cc-41f7-a604-85d57c92d47c"
      decimals="-3"
      id="F_2a6911de-6d85-470e-b698-0c2726c7bbad"
      unitRef="U_USD">0</us-gaap:StockIssued1>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="C_51d8287b-dcef-48fc-883f-8e1c478a2b86"
      decimals="INF"
      id="F_3846743a-2eab-483f-ba6d-b4923e7135b1"
      unitRef="U_shares">42621</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <rgen:FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition
      contextRef="C_51d8287b-dcef-48fc-883f-8e1c478a2b86"
      decimals="-3"
      id="F_0573a0e5-f638-4400-b749-c7876397d93f"
      unitRef="U_USD">7229000</rgen:FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition>
    <rgen:FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition
      contextRef="C_c7266c47-3f9c-4cd0-b4a6-6df11f50fe30"
      decimals="-3"
      id="F_9396bbcf-c850-4b5e-8997-e4b148a0fcc9"
      unitRef="U_USD">0</rgen:FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_f316346c-1ef0-4bbb-bc56-3993bcc15e42">&lt;div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;1.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Summary of Significant Accounting Policies &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The condensed consolidated financial statements included herein have been prepared by Repligen Corporation (the &#x201c;Company&#x201d;, &#x201c;Repligen&#x201d;, &#x201c;our&#x201d; or &#x201c;we&#x201d;) in accordance with generally accepted accounting principles accepted in the United States (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the United States Securities and Exchange Commission (&#x201c;SEC&#x201d;), for Quarterly Reports on Form 10-Q and Article 10 of Regulation S-X and do not include all of the information and footnote disclosures required by GAAP. These condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and accompanying notes thereto included in the Company&#x2019;s Annual Report on Form 10-K for the fiscal year ended December 31, 2022, which was filed with the SEC on February 22, 2023 (&#x201c;Form 10-K&#x201d;).&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. The business and economic uncertainty resulting from government-mandated actions in response to the COVID-19 pandemic, including all subsequent variants of the SARS-CoV-2 coronavirus ("COVID-19"), global geopolitical conflicts, supply chain challenges, cost pressure and the overall effects of the current high inflation environment on customers' purchasing patterns has made such estimates more difficult to calculate. Accordingly, actual results could differ from those estimates.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The condensed consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries.  All significant intercompany accounts and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company made no material changes in the application of its significant accounting policies that were disclosed in its Form 10-K. In the opinion of the Company, the accompanying unaudited condensed consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of its financial position as of September 30, 2023, its results of operations for the three and nine months ended September 30, 2023 and 2022 and cash flows for the three and nine months ended September 30, 2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Recent Accounting Standards Updates&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We consider the applicability and impact of all Accounting Standards Updates ("ASU" or "ASUs") on the Company&#x2019;s condensed consolidated financial statements. As of September 30, 2023, there were no accounting standards or ASUs recently issued or effective during the fiscal year that would have a material effect on the Company's condensed consolidated financial statements or disclosures.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_95b0efca-6930-43cb-a3fc-46269e6b6d84">&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The condensed consolidated financial statements included herein have been prepared by Repligen Corporation (the &#x201c;Company&#x201d;, &#x201c;Repligen&#x201d;, &#x201c;our&#x201d; or &#x201c;we&#x201d;) in accordance with generally accepted accounting principles accepted in the United States (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the United States Securities and Exchange Commission (&#x201c;SEC&#x201d;), for Quarterly Reports on Form 10-Q and Article 10 of Regulation S-X and do not include all of the information and footnote disclosures required by GAAP. These condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and accompanying notes thereto included in the Company&#x2019;s Annual Report on Form 10-K for the fiscal year ended December 31, 2022, which was filed with the SEC on February 22, 2023 (&#x201c;Form 10-K&#x201d;).&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. The business and economic uncertainty resulting from government-mandated actions in response to the COVID-19 pandemic, including all subsequent variants of the SARS-CoV-2 coronavirus ("COVID-19"), global geopolitical conflicts, supply chain challenges, cost pressure and the overall effects of the current high inflation environment on customers' purchasing patterns has made such estimates more difficult to calculate. Accordingly, actual results could differ from those estimates.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The condensed consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries.  All significant intercompany accounts and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company made no material changes in the application of its significant accounting policies that were disclosed in its Form 10-K. In the opinion of the Company, the accompanying unaudited condensed consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of its financial position as of September 30, 2023, its results of operations for the three and nine months ended September 30, 2023 and 2022 and cash flows for the three and nine months ended September 30, 2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_8bc0701c-98bb-43eb-963c-0dfb22a3c0b8">&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Recent Accounting Standards Updates&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We consider the applicability and impact of all Accounting Standards Updates ("ASU" or "ASUs") on the Company&#x2019;s condensed consolidated financial statements. As of September 30, 2023, there were no accounting standards or ASUs recently issued or effective during the fiscal year that would have a material effect on the Company's condensed consolidated financial statements or disclosures.&lt;/span&gt;&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_976e33bf-eff9-4d42-87c7-27b333a74af0">&lt;div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;2.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company uses various valuation approaches in determining the fair value of its assets and liabilities. The Company employs a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that observable inputs be used when available. Observable inputs are inputs that market participants would use in pricing the asset or liability based on market data obtained from sources independent of the Company. Unobservable inputs are inputs that reflect the Company&#x2019;s assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. The fair value hierarchy is broken down into three levels based on the source of inputs as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
    &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:95.0%;border-collapse:separate;margin-right:auto;"&gt;
     &lt;tr style="visibility:collapse;"&gt;
      &lt;td style="width:12.359%;"&gt;&lt;/td&gt;
      &lt;td style="width:87.641%;"&gt;&lt;/td&gt;
     &lt;/tr&gt;
     &lt;tr style="height:10pt;"&gt;
      &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1 -&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
      &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that the Company has the ability to access&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
     &lt;/tr&gt;
     &lt;tr style="height:10pt;"&gt;
      &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2 -&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
      &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
     &lt;/tr&gt;
     &lt;tr style="height:10pt;"&gt;
      &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3 -&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
      &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Valuations based on inputs that are unobservable and significant to the overall fair value measurement.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
     &lt;/tr&gt;
    &lt;/table&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The availability of observable inputs can vary among the various types of financial assets and liabilities. To the extent that the valuation is based on models or inputs that are less observable or unobservable in the market, the determination of fair value requires more judgment. In certain cases, the inputs used to measure fair value may fall into different levels of the fair value hierarchy. In such cases, for financial statement disclosure purposes, the level in the fair value hierarchy within which the fair value measurement is categorized is based on the lowest level input that is significant to the overall fair value measurement.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Cash, Cash Equivalents and Marketable Securities Held to Maturity&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes the Company's cash, cash equivalents and marketable securities held to maturity as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 and December 31, 2022 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:46.843%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortized&lt;br/&gt;&#160;Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and cash equivalents:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and money market funds&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortized &lt;br/&gt;Cost&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and cash equivalents:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and money market funds&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Marketable securities held to maturity:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;U.S. treasury bills &#x2013; short-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,323&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total cash, cash equivalents and marketable securities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;623,757&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;623,781&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During the fourth quarter of 2022, the Company purchased $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million of 6-month U.S. treasury bills with the positive intent and ability to hold them until maturity. Therefore, the Company classified this investment as held to maturity and stated it at amortized cost on the condensed consolidated balance sheet. These U.S. treasury bills matured in June 2023. &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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The amortized cost and the fair value of the Company's held to maturity securities by contractual maturity at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022 is summarized below:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:57.008%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.440999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.440999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.703%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortized&lt;br/&gt;&#160;Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Maturity of one year or less&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,323&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,323&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;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: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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Fair Value Measured on a Recurring Basis&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Financial assets and financial liabilities measured at fair value on a recurring basis consist of the following as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 and December 31, 2022 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:46.501%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Money market accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;389,473&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;389,473&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Short-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,589&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,589&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,759&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,759&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Money market accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Short-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;51,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;51,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Contingent Consideration &#x2013; Earnouts&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, the maximum amount of future contingent consideration (undiscounted) that we could be required to pay in connection with the completed acquisitions of Avitide, Inc. ("Avitide") in September 2021 and FlexBiosys, Inc. ("FlexBiosys") in April 2023, was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;125.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million over a three-year earnout period and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million over a two-year earnout period, respectively. Refer to Note 4, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;"Acquisitions" &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;included in Part II, Item 8, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Financial Statements and Supplementary Data&#x201d; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;to our Form 10-K and Note 3, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;"Acquisition of FlexBiosys, Inc.," &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;to this report for additional information on the contingent consideration earnouts.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During 2023, expected results and a change in market inputs used to calculate the discount rate, resulted in a decrease in amounts reported as of September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. &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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A reconciliation of the change in the fair value of contingent consideration &#x2013; earnouts is included in the following table (amounts in thousands):&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&#160;&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:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:77.483%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.194%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:18.322999999999997%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;65,509&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Acquisition date fair value of contingent consideration earnout&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,632&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Payment of contingent consideration earnout&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14,527&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Decrease in fair value of contingent consideration earnouts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;31,266&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;26,348&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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: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-size:10pt;font-family:Times New Roman;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;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The recurring Level 3 fair value measurement of our contingent consideration earnout that we expect to be required to settle our 2023, 2024 and 2025 contingent consideration obligations for Avitide and FlexBiosys include the following significant unobservable inputs (amounts in thousands, except percent data):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:18.14%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.7%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.06%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.32%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.04%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.7%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.7%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:13%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contingent Consideration Earnout&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="3" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value as of&lt;br/&gt;&#160;September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Valuation Technique&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unobservable Input&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Range&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted Average&lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;font-family:Times New Roman;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Probability of&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Success&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Commercialization-based payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,383&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Monte Carlo&lt;br/&gt;Simulation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnout Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Volatility&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;24.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;21.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue and Volume-&lt;br/&gt;based payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,460&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Monte Carlo&lt;br/&gt;Simulation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue &amp;amp; Volume&lt;br/&gt;Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;5.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;9.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;8.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnout Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Probability of&lt;br/&gt;&#160;Success&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Manufacturing line expansions&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,505&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Probability-weighted present value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnout Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="margin-left:3.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.447919145106397%;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;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-style:italic;min-width:fit-content;"&gt;Fair Value Measured on a Nonrecurring Basis&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During the three and nine months ended September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, there were no re-measurements to the fair value of financial assets and liabilities that are measured at fair value on a nonrecurring basis.&lt;/span&gt;&lt;/p&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_affcb8fa-72cc-42f7-a59c-9614563e9399">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes the Company's cash, cash equivalents and marketable securities held to maturity as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 and December 31, 2022 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:46.843%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.784%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.504999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortized&lt;br/&gt;&#160;Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and cash equivalents:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and money market funds&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;630,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortized &lt;br/&gt;Cost&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and cash equivalents:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and money market funds&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;523,458&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Marketable securities held to maturity:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;U.S. treasury bills &#x2013; short-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,323&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total cash, cash equivalents and marketable securities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;623,757&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;623,781&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts
      contextRef="C_e4765433-97ed-401e-8926-9e289252220b"
      decimals="-3"
      id="F_b3ed440d-2697-47dd-8df9-c93d6e6fb0fb"
      unitRef="U_USD">630779000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue
      contextRef="C_e4765433-97ed-401e-8926-9e289252220b"
      decimals="-3"
      id="F_6774cf1d-de96-4e19-8f4b-9e2150d32d24"
      unitRef="U_USD">630779000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts
      contextRef="C_ba888aed-dc97-4aeb-80fe-2cd42030c882"
      decimals="-3"
      id="F_aa4005c4-31e9-4598-a2b8-b7d3260f7be0"
      unitRef="U_USD">630779000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue
      contextRef="C_ba888aed-dc97-4aeb-80fe-2cd42030c882"
      decimals="-3"
      id="F_4f5bc2f4-61f2-4724-9342-dd657ead43e3"
      unitRef="U_USD">630779000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts
      contextRef="C_4aa55425-0a01-4df8-8aa3-6125e75c9e6f"
      decimals="-3"
      id="F_886bb43c-2135-4526-9bce-b7348367f48b"
      unitRef="U_USD">523458000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue
      contextRef="C_4aa55425-0a01-4df8-8aa3-6125e75c9e6f"
      decimals="-3"
      id="F_5440fac6-e66e-4251-a381-b6f554b9e695"
      unitRef="U_USD">523458000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts
      contextRef="C_2d8d1da4-1b3c-43fd-a1a0-d88015ad309c"
      decimals="-3"
      id="F_4d1951e1-aa44-4618-b6ff-ec7247133729"
      unitRef="U_USD">523458000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue
      contextRef="C_2d8d1da4-1b3c-43fd-a1a0-d88015ad309c"
      decimals="-3"
      id="F_f7f64500-d8bf-4eb7-bbc3-757dae17d15c"
      unitRef="U_USD">523458000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts
      contextRef="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc"
      decimals="-3"
      id="F_782c731a-76ad-4066-bd2d-4bf20eee1aaf"
      unitRef="U_USD">100299000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts>
    <rgen:DebtSecuritiesHeldToMaturityGrossUnrealizedGain
      contextRef="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc"
      decimals="-3"
      id="F_609ff7c6-9d9d-4f8a-945e-087a973e8b60"
      unitRef="U_USD">24000</rgen:DebtSecuritiesHeldToMaturityGrossUnrealizedGain>
    <rgen:DebtSecuritiesHeldToMaturityEstimatedFairValue
      contextRef="C_3f9533f0-9585-4648-b7c5-0e06c2e7ffcc"
      decimals="-3"
      id="F_e97a7b11-4244-4bcd-a10f-143f2b9d91b7"
      unitRef="U_USD">100323000</rgen:DebtSecuritiesHeldToMaturityEstimatedFairValue>
    <rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts
      contextRef="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54"
      decimals="-3"
      id="F_a8d84328-07d4-4d26-889c-ebe3f3055cb7"
      unitRef="U_USD">623757000</rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts>
    <rgen:DebtSecuritiesHeldToMaturityGrossUnrealizedGain
      contextRef="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54"
      decimals="-3"
      id="F_8271e594-1931-400e-96cf-092d8d59e227"
      unitRef="U_USD">24000</rgen:DebtSecuritiesHeldToMaturityGrossUnrealizedGain>
    <rgen:AvailableForSaleSecuritiesEstimatedFairValue
      contextRef="C_44eec7a8-d54a-4a11-bff3-39cbde06ea54"
      decimals="-3"
      id="F_3e814b6a-952a-472d-b1ce-333acc561e42"
      unitRef="U_USD">623781000</rgen:AvailableForSaleSecuritiesEstimatedFairValue>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="C_d7d37b09-d270-4cbb-a9da-f9e9f636fbc8"
      decimals="-5"
      id="F_095deebf-3e06-4d6c-8088-03c108929624"
      unitRef="U_USD">100000000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_81f3b6a5-15ff-44d5-8635-9498902ee1d9">&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The amortized cost and the fair value of the Company's held to maturity securities by contractual maturity at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022 is summarized below:&lt;/span&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:57.008%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.440999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.440999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.703%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortized&lt;br/&gt;&#160;Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Maturity of one year or less&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,323&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100,323&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;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: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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock>
    <rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_30ef4ae6-0d6c-4981-a1f2-b56b89ecb9d9"
      unitRef="U_USD">100299000</rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_4b1ed175-63fa-4821-9f92-0f2d7bbc9c01"
      unitRef="U_USD">100323000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_2c4ebaca-245d-44de-ae98-7f52f20f4669"
      unitRef="U_USD">100299000</rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_29347e5d-a06a-4fa1-8ce0-74f35e4f6b50"
      unitRef="U_USD">100323000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_ffff171e-f11a-4e9a-af87-54d125a9f701">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Financial assets and financial liabilities measured at fair value on a recurring basis consist of the following as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 and December 31, 2022 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:46.501%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.279%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.096%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Money market accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;389,473&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;389,473&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Short-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,589&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,589&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,759&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,759&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Money market accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Short-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-term contingent consideration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;51,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;51,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_56de56c9-17e8-4a0a-9d37-a1c65d482e15"
      decimals="-3"
      id="F_465a3408-a874-4004-8f4a-181fabb263bb"
      unitRef="U_USD">389473000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_dfef19f0-4a11-43ab-84a9-91b3b09337ef"
      decimals="-3"
      id="F_cd5de8ca-9642-4dc5-940b-5c3a057a93f8"
      unitRef="U_USD">389473000</us-gaap:AssetsFairValueDisclosure>
    <rgen:ShortTermContingentConsideration
      contextRef="C_d057084f-8601-4496-91e9-7fbcf94b4456"
      decimals="-3"
      id="F_c3f80d54-3286-488c-8901-298686c3979f"
      unitRef="U_USD">12589000</rgen:ShortTermContingentConsideration>
    <rgen:ShortTermContingentConsideration
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_4cf561d3-f6a1-49a4-9b8c-a9e532630042"
      unitRef="U_USD">12589000</rgen:ShortTermContingentConsideration>
    <rgen:LongTermContingentConsideration
      contextRef="C_d057084f-8601-4496-91e9-7fbcf94b4456"
      decimals="-3"
      id="F_6e82135c-f710-4860-8170-ecb610b249a9"
      unitRef="U_USD">13759000</rgen:LongTermContingentConsideration>
    <rgen:LongTermContingentConsideration
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_bcd6aade-ae6a-4a2b-a508-fa6667dd1e4e"
      unitRef="U_USD">13759000</rgen:LongTermContingentConsideration>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_54886403-e19a-4dfc-99c5-a193e57198e7"
      decimals="-3"
      id="F_c50f313d-16a9-4e10-b640-bafb26486f5e"
      unitRef="U_USD">343929000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="C_755445a6-cd7b-433e-8ed9-88c0064de373"
      decimals="-3"
      id="F_eeda21cc-448d-4832-9b73-d558bb05b7fc"
      unitRef="U_USD">343929000</us-gaap:AssetsFairValueDisclosure>
    <rgen:ShortTermContingentConsideration
      contextRef="C_3daf5c5c-4edf-45fb-8e28-01fca25247f6"
      decimals="-3"
      id="F_e334a2ed-5536-40c8-a95b-305ea4b5b141"
      unitRef="U_USD">13950000</rgen:ShortTermContingentConsideration>
    <rgen:ShortTermContingentConsideration
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_c4741e7e-93f6-4573-b811-31bcb49e1466"
      unitRef="U_USD">13950000</rgen:ShortTermContingentConsideration>
    <rgen:LongTermContingentConsideration
      contextRef="C_3daf5c5c-4edf-45fb-8e28-01fca25247f6"
      decimals="-3"
      id="F_167c64c1-304c-4ab6-862d-0df4003151a0"
      unitRef="U_USD">51559000</rgen:LongTermContingentConsideration>
    <rgen:LongTermContingentConsideration
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_ed3cc88b-b525-4b31-ae16-2c1ee3031cd9"
      unitRef="U_USD">51559000</rgen:LongTermContingentConsideration>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="C_51d8287b-dcef-48fc-883f-8e1c478a2b86"
      decimals="-5"
      id="F_0e5ed7ac-aebf-4ef8-b08d-9ffa4384bb60"
      unitRef="U_USD">125000000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      decimals="-6"
      id="F_4e5e1a75-60e2-4b16-94b6-d2b631564f07"
      unitRef="U_USD">42000000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_b67d7d3a-2b40-417c-9516-50b6db0a10f0">&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A reconciliation of the change in the fair value of contingent consideration &#x2013; earnouts is included in the following table (amounts in thousands):&lt;/span&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:77.483%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.194%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:18.322999999999997%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;65,509&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Acquisition date fair value of contingent consideration earnout&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,632&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Payment of contingent consideration earnout&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14,527&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Decrease in fair value of contingent consideration earnouts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;31,266&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;26,348&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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: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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="C_9a23c019-0476-42a1-bebb-8fef85487d30"
      decimals="-3"
      id="F_028e37a2-4cde-43f7-8adc-8f97680f4f4c"
      unitRef="U_USD">65509000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
      contextRef="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e"
      decimals="-3"
      id="F_5ae18179-4f10-407d-b426-a5efdbecaa34"
      unitRef="U_USD">6632000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e"
      decimals="-3"
      id="F_cce9475c-cc7e-4333-b466-6addcae6c768"
      unitRef="U_USD">-14527000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e"
      decimals="-3"
      id="F_f8957c49-452c-4c6c-b7d0-bad001845803"
      unitRef="U_USD">31266000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="C_6099b1e0-951d-4096-8cd0-45f1352a1677"
      decimals="-3"
      id="F_5ead0449-566a-4fd6-b5c2-678ee2a1ac12"
      unitRef="U_USD">26348000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_8f0fb258-fe1f-4152-84ed-5023b3ebb5fd">&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The recurring Level 3 fair value measurement of our contingent consideration earnout that we expect to be required to settle our 2023, 2024 and 2025 contingent consideration obligations for Avitide and FlexBiosys include the following significant unobservable inputs (amounts in thousands, except percent data):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:18.14%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.7%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.06%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.32%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.04%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.7%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.7%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:13%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contingent Consideration Earnout&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="3" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value as of&lt;br/&gt;&#160;September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Valuation Technique&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unobservable Input&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Range&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted Average&lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;font-family:Times New Roman;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Probability of&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Success&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Commercialization-based payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,383&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Monte Carlo&lt;br/&gt;Simulation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnout Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Volatility&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;13.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;24.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;21.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue and Volume-&lt;br/&gt;based payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,460&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Monte Carlo&lt;br/&gt;Simulation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue &amp;amp; Volume&lt;br/&gt;Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;5.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;9.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;8.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnout Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Probability of&lt;br/&gt;&#160;Success&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;border-left:0.5pt solid #000000;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Manufacturing line expansions&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,505&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Probability-weighted present value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnout Discount Rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%-&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;border-right:0.5pt solid #000000;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.&lt;/span&gt;</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock>
    <rgen:ProbabilityOfSuccess
      contextRef="C_a0f32af8-bf41-4524-8432-35b4fe4c8f39"
      decimals="2"
      id="F_c380fc45-a6f0-4f87-a85e-0282778ff23c"
      unitRef="U_pure">1</rgen:ProbabilityOfSuccess>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_b9fcda26-79f9-4cec-809c-4a8538eb5844"
      decimals="2"
      id="F_972e11a2-fadc-437a-a974-6a13b46b24ad"
      unitRef="U_pure">1</rgen:WeightedAverageDiscountRate>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="C_a0f32af8-bf41-4524-8432-35b4fe4c8f39"
      decimals="-3"
      id="F_e39a8b07-7410-4ed4-9485-759d831817b8"
      unitRef="U_USD">19383000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_323fbe34-7f7b-4bb3-b3cb-66c509c7a295"
      decimals="3"
      id="F_0d76d874-ae56-4ad7-9789-14f0d701fc7f"
      unitRef="U_pure">0.071</us-gaap:DerivativeFixedInterestRate>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_b47fc7c0-aa97-483f-954c-6453caaa6da0"
      decimals="3"
      id="F_8b72cdc6-4dca-4073-8b42-47da22b1eac5"
      unitRef="U_pure">0.071</rgen:WeightedAverageDiscountRate>
    <rgen:VolatilityRateOfContingentConsideration
      contextRef="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9"
      decimals="3"
      id="F_2effce71-460e-4b56-af9a-0da8d3085cd3"
      unitRef="U_pure">0.131</rgen:VolatilityRateOfContingentConsideration>
    <rgen:VolatilityRateOfContingentConsideration
      contextRef="C_a47ca049-a970-400f-b17f-23a2967262f3"
      decimals="3"
      id="F_3dd2f7ed-bacc-4b6e-8e04-ca51eda51a4a"
      unitRef="U_pure">0.246</rgen:VolatilityRateOfContingentConsideration>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_cfd97fee-6741-43dc-bf9b-8a0f0b3ff041"
      decimals="3"
      id="F_414f0b7d-95e6-4bab-ab09-c9ccc654cd04"
      unitRef="U_pure">0.217</rgen:WeightedAverageDiscountRate>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="C_4205a452-63ed-4b15-bb8d-d8a58e8528c5"
      decimals="-3"
      id="F_ecbf49db-793b-491b-8d91-607adb7cdcde"
      unitRef="U_USD">1460000</us-gaap:LiabilitiesFairValueDisclosure>
    <rgen:RevenueAndVolumeDiscountRate
      contextRef="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9"
      decimals="3"
      id="F_05fe640b-0c54-40ce-9de9-057f61175728"
      unitRef="U_pure">0.051</rgen:RevenueAndVolumeDiscountRate>
    <rgen:RevenueAndVolumeDiscountRate
      contextRef="C_a47ca049-a970-400f-b17f-23a2967262f3"
      decimals="3"
      id="F_70b246ba-cec6-4b18-863b-767eda09bc9f"
      unitRef="U_pure">0.093</rgen:RevenueAndVolumeDiscountRate>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_64256d68-98ed-4170-b03f-39dfff90cc5f"
      decimals="3"
      id="F_abe5078a-881f-4ca4-a518-a807a1b99f5d"
      unitRef="U_pure">0.082</rgen:WeightedAverageDiscountRate>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_bc4c0b87-712b-48ab-a928-a81cc801a6d9"
      decimals="3"
      id="F_7ee109cf-5691-4e12-b47a-1de68508cb13"
      unitRef="U_pure">0.061</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_a47ca049-a970-400f-b17f-23a2967262f3"
      decimals="3"
      id="F_03ab296d-e004-48d9-9ee0-8349b14ad9a7"
      unitRef="U_pure">0.071</us-gaap:DerivativeFixedInterestRate>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_2d3bdc7d-a42e-4d3e-a455-f05b56dd8ad0"
      decimals="3"
      id="F_f4b9f1f4-6463-42af-8f85-8310738a3324"
      unitRef="U_pure">0.065</rgen:WeightedAverageDiscountRate>
    <rgen:ProbabilityOfSuccess
      contextRef="C_9309f5b7-5f6f-4683-8665-f36d7eec347c"
      decimals="2"
      id="F_122e8b78-699c-4b88-8f0b-8499333b75bb"
      unitRef="U_pure">1</rgen:ProbabilityOfSuccess>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_a7a55267-da21-4945-96dd-90a1ead6dd5d"
      decimals="2"
      id="F_21f2f23d-20fc-42b1-a0d5-3b61740237a0"
      unitRef="U_pure">1</rgen:WeightedAverageDiscountRate>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="C_324df715-cbf3-4103-aadb-9094df374fac"
      decimals="-3"
      id="F_d81e4f28-bc8d-49a9-a708-08a18874893b"
      unitRef="U_USD">5505000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_2c2f62ac-fa5f-4eb3-bf11-7ae904a232cd"
      decimals="3"
      id="F_540d3dcf-d109-40c9-ba5e-6d6f907b7e3f"
      unitRef="U_pure">0.061</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="C_0b7e0bad-3f4a-41c9-a080-b0efc8569cec"
      decimals="3"
      id="F_928d139b-a638-48c9-ac92-8bd880b93532"
      unitRef="U_pure">0.064</us-gaap:DerivativeFixedInterestRate>
    <rgen:WeightedAverageDiscountRate
      contextRef="C_3039311a-848a-433b-b94b-bb73d3fb5bb8"
      decimals="3"
      id="F_6892dd40-47a6-42c4-a9da-672b7719b188"
      unitRef="U_pure">0.063</rgen:WeightedAverageDiscountRate>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_9d52c8d9-1893-433d-83f7-44d49567c438">&lt;div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;3.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Acquisition of FlexBiosys, Inc.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;April 17, 2023&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, the Company completed its acquisition of all of the outstanding equity interests in FlexBiosys, pursuant to an Equity Purchase Agreement ("EPA") with FlexBiosys, TSAP Holdings Inc. ("NJ Seller"), Gayle Tarry and Stanley Tarry, as individuals (collectively with NJ Seller, the "Sellers"), and Stanley Tarry, in his capacity as the representative of the Sellers (the "FlexBiosys Acquisition").&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;FlexBiosys, which is headquartered in Branchburg, New Jersey, offers expert design and custom manufacturing of single-use bioprocessing products and a comprehensive range of products that include bioprocessing bags, bottles, and tubing assemblies. These products will complement and expand our fluid management portfolio of offerings.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Consideration transferred&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The FlexBiosys Acquisition was accounted for as a purchase of a business under ASC 805, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;"Business Combinations," &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;and the Company engaged a third-party valuation firm to assist with the valuation of FlexBiosys. Under the terms of the EPA, all outstanding equity interests of FlexBiosys were acquired for consideration with a value totaling $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;41.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million. The FlexBiosys Acquisition was funded through payment of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million in cash, which includes $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million deposited in escrow for future payments, the issuance of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;31,415&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; unregistered shares of the Company's common stock totaling $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and contingent consideration with fair value of approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Under the acquisition method of accounting, the assets acquired and liabilities assumed of FlexBiosys were recorded as of the acquisition date, at their respective fair values, and consolidated with those of the Company. The fair value of the net assets acquired is estimated to be $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, the fair value of the intangible assets acquired is estimated to be $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and the residual goodwill is estimated to be $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million. The estimated consideration and preliminary purchase price information has been prepared using a preliminary valuation. Acquisition-related costs are not included as a component of consideration transferred but are expensed in the periods in which costs are incurred. The Company has incurred $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million of transaction and integration costs associated with the FlexBiosys Acquisition from the date of acquisition to &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; with $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;of the transaction and integration costs incurred during the three months ended September 30, 2023. The transaction costs are&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;included &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;in operating expenses in the consolidated statements of comprehensive income for the three and nine months ended September 30, 2023.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Fair Value of Net Assets Acquired&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The preliminary allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date. As of September 30, 2023, the purchase accounting for this acquisition had not been finalized. As additional information becomes available, the Company may further revise its preliminary purchase price allocation during the remainder of the measurement period. Besides tax implications of the purchase price allocation, the final allocation may result in changes to other assets and liabilities.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The components and estimated allocation of the purchase price consist of the following (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.016%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.935%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.049%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,090&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accounts receivable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;683&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;667&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,034&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating lease right of use asset&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,537&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;9,860&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademark and tradename&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-competition agreements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14,321&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other long-term assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accounts payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;136&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accrued liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;314&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating lease liability&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;39&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating lease liability, long-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,498&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair value of net assets acquired&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;41,030&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;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="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During the third quarter of 2023, the Company recorded an immaterial net working capital adjustment related to the FlexBiosys Acquisition, which is included in goodwill in the table above.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Acquired Goodwill&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The goodwill of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million represents future economic benefits expected to arise from anticipated synergies from the integration of FlexBiosys into the Company. These synergies include operating efficiencies and strategic benefits projected to be achieved as a result of the FlexBiosys Acquisition. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Substantially all of the goodwill recorded is expected to be deductible for income tax purposes.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Intangible Assets&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:11pt;font-family:'Calibri',sans-serif;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table sets forth the components of the identified intangible assets associated with the FlexBiosys Acquisition and their estimated useful lives:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:53.912%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.821%;"&gt;&lt;/td&gt;
        &lt;td style="width:19.892%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.821%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:20.554%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Useful life&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;9,860&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademark and tradename&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-competition agreements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;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-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;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-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,640&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1
      contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621"
      id="F_d8fe9277-bf19-46b5-bf5b-0b4ce9fc13f5">2023-04-17</us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621"
      decimals="-5"
      id="F_6a0811c9-fa3a-496c-8079-07d031023029"
      unitRef="U_USD">41000000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621"
      decimals="-6"
      id="F_76052f1a-f508-4aa4-8ca4-08faa1e1cdf2"
      unitRef="U_USD">29000000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh
      contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222"
      decimals="-5"
      id="F_61761525-de8e-45b9-9b0d-6adb9172be35"
      unitRef="U_USD">6300000</us-gaap:BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621"
      decimals="INF"
      id="F_eab94a88-416c-481f-a623-e62836266267"
      unitRef="U_shares">31415</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="C_8225936e-5d96-4ffa-b252-e28305f513ba"
      decimals="-5"
      id="F_3ebce230-f8e7-41d3-a34d-5bbb11a673e9"
      unitRef="U_USD">5400000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="C_3ee66a6f-df77-4080-8b9b-0df16d166621"
      decimals="-5"
      id="F_f4ffa27a-1aa6-4b26-93f1-c5b7c4aeb74f"
      unitRef="U_USD">6600000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities
      contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222"
      decimals="-5"
      id="F_8284ab49-d708-463e-99e0-dbb219ab5f1a"
      unitRef="U_USD">14100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222"
      decimals="-5"
      id="F_c2dcedbe-ae05-43d0-950d-2db6a4499b96"
      unitRef="U_USD">12600000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue
      contextRef="C_582b2b17-f0d2-4f33-9238-acf1bdc3d222"
      decimals="-5"
      id="F_57d30b49-dca0-4763-b4fb-6aee48b72d5d"
      unitRef="U_USD">14300000</us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue>
    <us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-5"
      id="F_e2db98f2-744f-4701-9778-0724f7ef06ef"
      unitRef="U_USD">900000</us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="C_698ddc08-a965-415e-a40a-374f09d419d8"
      decimals="-5"
      id="F_f401c487-7975-4f5f-afbe-4114c85eb33d"
      unitRef="U_USD">500000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      id="F_c58193ec-a992-4916-97a8-b4f814e3feb9">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The components and estimated allocation of the purchase price consist of the following (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.016%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.935%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.049%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,090&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accounts receivable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;683&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;667&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,034&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating lease right of use asset&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,537&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;9,860&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademark and tradename&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-competition agreements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14,321&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other long-term assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accounts payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;136&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accrued liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;314&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating lease liability&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;39&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating lease liability, long-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,498&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:20pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair value of net assets acquired&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;41,030&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_50724ab9-b6b2-4673-ad6f-347b026eb226"
      unitRef="U_USD">1090000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_ba953346-082e-4053-b6a5-8877c45cb6ea"
      unitRef="U_USD">683000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_486c1409-4148-4dd0-b92a-9a2fadd4a717"
      unitRef="U_USD">667000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_ca870ed5-8d9a-42cc-bfb9-870026d88130"
      unitRef="U_USD">35000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_10da3963-85cf-456d-a986-e95ba7482fce"
      unitRef="U_USD">12034000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_a331c3d7-0843-48f3-b856-6440f01518f4"
      unitRef="U_USD">3537000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="C_fd1105c0-8b60-471b-af3a-ca9ecebc9472"
      decimals="-3"
      id="F_d02cb0e1-e9ba-4c0d-9ff5-12f8ef86f97a"
      unitRef="U_USD">2530000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="C_16fe91ab-7cc9-4f23-ad3b-1c6601fd6a2e"
      decimals="-3"
      id="F_1fb035bb-4639-4bae-9a87-4a6dc9ea75a3"
      unitRef="U_USD">9860000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="C_0a325822-1e75-48f0-bfe6-37931198fa2a"
      decimals="-3"
      id="F_2f9ab680-ff3f-463a-96b6-fdf6e7800ec2"
      unitRef="U_USD">30000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="C_c04f5c43-2713-43eb-a0b0-f639e587c213"
      decimals="-3"
      id="F_98358e60-f16d-41ea-9b18-019b13e6a13a"
      unitRef="U_USD">220000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_1ea553db-a70a-4490-a1d9-d3a8b1eff5d6"
      unitRef="U_USD">14321000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_f94b7fa2-7cfb-47b9-b339-1fca325d7f20"
      unitRef="U_USD">10000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_8d818625-9a0f-4096-95fc-cbf87f0a7ce5"
      unitRef="U_USD">136000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_3119fa77-c729-4264-a1e9-0da28eebf4f9"
      unitRef="U_USD">314000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_446c0b0e-2aa4-4908-a2f3-648be0557452"
      unitRef="U_USD">39000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_c618d27b-9eee-4aee-b4b4-17275919f9bd"
      unitRef="U_USD">3498000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_390da40c-c83f-476a-bca8-94ed689e0b97"
      unitRef="U_USD">41030000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:Goodwill
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-5"
      id="F_0621f8f8-1f6f-4eac-94fe-b12368006321"
      unitRef="U_USD">14300000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      id="F_0e407a77-2e63-48ac-9975-4abe6464a1a3">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table sets forth the components of the identified intangible assets associated with the FlexBiosys Acquisition and their estimated useful lives:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:53.912%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.821%;"&gt;&lt;/td&gt;
        &lt;td style="width:19.892%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.821%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:20.554%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Useful life&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;9,860&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademark and tradename&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-competition agreements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5 years&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;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-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;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-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12,640&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_09aff2d0-95ff-40b1-a2d7-48262305cd62"
      id="F_c7964932-cf03-4fcf-88e4-661a466bf23e">P12Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_fd1105c0-8b60-471b-af3a-ca9ecebc9472"
      decimals="-3"
      id="F_282ce9ea-96c1-49b7-a73e-47d8fc8a288e"
      unitRef="U_USD">2530000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_c164b6cb-58d7-4dd5-b3db-7e5670527c2a"
      id="F_da9258b8-caef-4abc-a07b-c5cbd78a9d01">P16Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_16fe91ab-7cc9-4f23-ad3b-1c6601fd6a2e"
      decimals="-3"
      id="F_19b53fc1-d864-445c-911c-32a24bab86d9"
      unitRef="U_USD">9860000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_0a020387-8e25-4e88-a3ee-23a02a143298"
      id="F_a6786c40-2829-47ea-ae7c-dee8101737ef">P4Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_05afc143-e2ca-4d16-9905-a872dc0bfdbb"
      decimals="-3"
      id="F_723cd61b-3696-405a-8de7-1b2bf827101e"
      unitRef="U_USD">30000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="C_300d7e4f-ccf2-4d20-b499-03865151e0ef"
      id="F_cc91e902-2827-4ddd-8e9f-fefb900153b3">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_c04f5c43-2713-43eb-a0b0-f639e587c213"
      decimals="-3"
      id="F_92310cdd-e669-4866-a943-d8f1c2e648b3"
      unitRef="U_USD">220000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="C_dccc7332-54e7-463e-ad34-788072af7c2c"
      decimals="-3"
      id="F_c437a589-78d6-44bd-81e2-b621af24f72f"
      unitRef="U_USD">12640000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_66c671d1-2d0d-46f7-a6f0-f6c3cdc863d8">&lt;div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;4.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Restructuring Plan&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As previously disclosed, in July 2023 the Board of Directors authorized the Company's management team to undertake restructuring activities to simplify and streamline our organization and strengthen the overall effectiveness of our operations (the&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;"Restructuring Plan"). In addition to the initial streamlining and re-balancing efforts contemplated in July, the Company is undertaking further restructuring activities (collectively, the "Restructuring Plan") which include consolidating a portion of our manufacturing operations between certain U.S. locations, discontinuing the sale of certain product SKUs, and evaluating raw materials and components secured during the 2020-2022 COVID-19 pandemic period (the "COVID-19 Period") to meet increasing demand during a challenging supply chain environment in the industry. These activities are expected to be substantially completed by the end of 2023.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company recorded pre-tax costs of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;24.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for the three and nine months ended September 30, 2023, related to the Restructuring Plan and for the full year of 2023 the Company expects to record charges of approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;26&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, with the remaining costs in the fourth quarter related to remaining severance and employee-related costs. Approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;21&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million will be non-cash, relating primarily to an inventory write-off to adjust inventory to net realizable value and accelerated depreciation on equipment related to the shutdown of manufacturing facilities and production lines, the remaining costs will be cash expenses, primarily related to severance and employee-related costs.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company recorded pre-tax costs of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;24.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for the three and nine months ended September 30, 2023 related to the Restructuring Plan and for the full year of 2023 the Company expects to record charges of approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;26&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes the charges related to restructuring activities by type of cost:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:27.9%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.74%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.52%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.42%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.84%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three and Nine Months Ended September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Severance &amp;amp; Employee-Related Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory Write-Off&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accelerated Depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Facility and Other Exit Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cost of product revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,654&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,788&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;84&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;22,711&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Research and development&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Selling, general and administrative&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;27&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;97&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,266&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,830&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;24,012&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;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: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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Severance and employee-related costs under the Restructuring Plan are associated with actual headcount reductions. Costs incurred include cash severance and non-cash severance, including other termination benefits. Severance and other termination benefit packages are based on established benefit arrangements or local statutory requirements and we recognized the contractual component of these benefits when payment was probable and could be reasonably estimated.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The inventory write-off includes the impact of the Company discontinuing the sale of certain product SKUs and the impact of having proactively secured materials during the COVID-19 Period to meet accelerated demand during a challenging supply chain environment in the industry. Where demand has reduced, finished goods and raw materials, whose value exceeded the projected requirements to be used before reaching their expiration date, were written down to their realizable value. The Restructuring Plan also includes the closing of manufacturing facilities and production lines, which included inventory that could not be repurposed.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-cash charges for accelerated depreciation were recognized on long-lived assets that were taken out of service before the end of their normal service due to the shutdown of manufacturing facilities and production lines, in which case depreciation estimates were revised to reflect the use of the assets over their shortened useful life.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The restructuring accrual is included in accrued liabilities in the condensed consolidated balance sheet as of September 30, 2023 and the balance is expected to be paid by the end of 2023. &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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Activity related to the Restructuring Plan for the nine months ended September 30, 2023 was as follows (amounts in thousands):&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:32.1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.78%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.84%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Restructuring Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amounts Paid in the Nine Months Ended September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-Cash Restructuring Items&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Restructuring Liability&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Severance &amp;amp; employee-related costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,830&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,478&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;214&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;138&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory write-off&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accelerated depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Facility exit and other exit costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;171&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;24,012&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,649&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;21,225&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;138&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;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:RestructuringAndRelatedActivitiesDisclosureTextBlock>
    <us-gaap:RestructuringCosts
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-5"
      id="F_4e98553e-2824-4f39-8c81-c7a71089f11f"
      unitRef="U_USD">24000000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-5"
      id="F_e177add6-2a22-446d-beca-704fdef3f794"
      unitRef="U_USD">24000000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCharges
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-6"
      id="F_6b09a173-a8cd-4054-84c5-99eb6ef276bf"
      unitRef="U_USD">26000000</us-gaap:RestructuringCharges>
    <rgen:NoncashinventorywriteOff
      contextRef="C_b83b7f79-eb2d-4463-8d73-431f7ee309b4"
      decimals="-6"
      id="F_bf9deb4e-5191-4e78-ace5-c97bef94ebc9"
      unitRef="U_USD">21000000</rgen:NoncashinventorywriteOff>
    <us-gaap:RestructuringCosts
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-5"
      id="F_d4f506a6-3e7f-4cc9-8495-3497877aca38"
      unitRef="U_USD">24000000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-5"
      id="F_c8dea101-6967-488e-a09f-3d11c8c4cd15"
      unitRef="U_USD">24000000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCharges
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-6"
      id="F_8f1c1480-e990-4fe0-8fa0-2ff08b9e79ef"
      unitRef="U_USD">26000000</us-gaap:RestructuringCharges>
    <us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_8ecdcbe6-a564-499e-8d10-e65002ce9fd7">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes the charges related to restructuring activities by type of cost:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:27.9%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.74%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.52%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.42%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.84%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three and Nine Months Ended September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Severance &amp;amp; Employee-Related Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory Write-Off&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accelerated Depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Facility and Other Exit Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cost of product revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,654&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,788&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;84&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;22,711&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Research and development&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Selling, general and administrative&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;27&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;97&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,266&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,830&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;24,012&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;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: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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock>
    <us-gaap:RestructuringCosts
      contextRef="C_1e720d5e-8b9e-4b94-b885-ee375061b75f"
      decimals="-3"
      id="F_1be199f8-bf66-4e26-a652-12a12cf43e4a"
      unitRef="U_USD">1654000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_9ede9dc7-76ee-4a60-8d3d-b7831dd2f586"
      decimals="-3"
      id="F_681e3013-64c7-4f3d-9ffb-624662dcc1f2"
      unitRef="U_USD">1654000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_b09a2afc-265f-4a83-9a3c-a2923ee317ba"
      decimals="-3"
      id="F_3cbf81e2-69aa-49b1-87c6-c806d9c0d38e"
      unitRef="U_USD">17185000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_aba719ab-7b87-445e-970a-55bd323b25b9"
      decimals="-3"
      id="F_52470781-f790-40e0-b74e-c24343f1ac83"
      unitRef="U_USD">17185000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_66ee78d4-1501-41f8-8bad-081591c64446"
      decimals="-3"
      id="F_ee976d21-bf97-4ab8-9e59-03a073683677"
      unitRef="U_USD">3788000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_c75dba94-3d35-43ec-9ed5-9da06bf49a5b"
      decimals="-3"
      id="F_7d732444-84f8-4e01-8b76-851a3045b915"
      unitRef="U_USD">3788000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_6d9084c7-b2b0-46e7-a373-50c12bf22ac3"
      decimals="-3"
      id="F_2d3c29c3-6d1c-44ad-bdd4-375dab097e6a"
      unitRef="U_USD">84000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_d81a4437-bb80-4be4-ba91-a5e7069c6c46"
      decimals="-3"
      id="F_6c6e6cfd-5dc5-4249-a408-115f164f14bb"
      unitRef="U_USD">84000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_1e784908-4b51-4615-ac72-38d8f501004d"
      decimals="-3"
      id="F_1255a075-c35f-48bd-b6a3-9ab852d315e9"
      unitRef="U_USD">22711000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_24b3d094-f833-451c-b00d-cc5909ca2b28"
      decimals="-3"
      id="F_5a84d286-4588-47f7-bc2d-2c457c03c604"
      unitRef="U_USD">22711000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_8f79b075-c9aa-49d4-bf17-8f21bea61eca"
      decimals="-3"
      id="F_7cb78a3f-a087-42de-8a25-0d1460d9c901"
      unitRef="U_USD">34000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_903609b8-dafb-41ed-89ce-cd3f8437e759"
      decimals="-3"
      id="F_6ceb148d-f914-4b37-8e58-730f45ca6ac2"
      unitRef="U_USD">34000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_a7514252-0b1a-4c3c-a70e-61af677468b2"
      decimals="-3"
      id="F_14717b85-683d-416a-a183-c010f5f7a37e"
      unitRef="U_USD">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_5237d958-4fb9-4dd4-8035-bfd3df21d36c"
      decimals="-3"
      id="F_e0ab4181-6161-48b7-a920-caa73791d4a4"
      unitRef="U_USD">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_ead61b81-a0b1-4eaa-89e8-0908dd53afd5"
      decimals="-3"
      id="F_4e5e9fa4-7cb0-4f14-b559-989d80123e51"
      unitRef="U_USD">1000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_052089cf-3ef1-473e-a7df-afce31271ab0"
      decimals="-3"
      id="F_98fa3a97-29f6-4134-b6dd-c1c11382aa01"
      unitRef="U_USD">1000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_6302ca2f-2211-4af6-82fb-0147adfc8d7b"
      decimals="-3"
      id="F_42149fbe-d2bc-411e-ae51-110cc02ea1a4"
      unitRef="U_USD">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_cd0fa4fd-2b07-4bbc-9802-a9683374cc3f"
      decimals="-3"
      id="F_d31e6ad8-e467-4ba5-bf21-047518d634ea"
      unitRef="U_USD">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_5f45ba16-985f-4eae-a153-2cd561ae1db1"
      decimals="-3"
      id="F_8c7e9fc3-ed5e-4722-a7a9-b195421d9ee5"
      unitRef="U_USD">35000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_37ad1c18-3905-4747-8acb-2d3e3711075a"
      decimals="-3"
      id="F_f3388b2d-410c-48c4-a917-ead1f6345c3c"
      unitRef="U_USD">35000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_636b9526-cb85-4246-a319-73b5d8251b39"
      decimals="-3"
      id="F_3e101922-9610-460b-9428-5291a1e615e0"
      unitRef="U_USD">1142000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_55c86da6-b271-448c-a888-ad8642d1b0b2"
      decimals="-3"
      id="F_89d404ad-c594-45ac-a736-6f676138fe94"
      unitRef="U_USD">1142000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_33916c39-0849-428b-9d27-2c65aeb0bff1"
      decimals="-3"
      id="F_497ad78e-c1e8-4999-97ef-d61015a1d418"
      unitRef="U_USD">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_3e2f918e-895b-479a-b917-22184c12541d"
      decimals="-3"
      id="F_6bde6402-7a21-4700-b76c-19e17f66ceee"
      unitRef="U_USD">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_16bec3ca-1b09-48b5-8fc5-64ec7fa403c4"
      decimals="-3"
      id="F_1696ad1b-7803-40a4-b02c-a0d8731c3ee2"
      unitRef="U_USD">27000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_9131de4c-ce74-47ff-b625-8f5ef9568d7c"
      decimals="-3"
      id="F_cbb0f22a-6848-456c-9fac-7c7ba67486fa"
      unitRef="U_USD">27000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_97c83f2b-2677-4fac-993e-34520451f429"
      decimals="-3"
      id="F_a57d077d-088f-421d-90fc-4ad6b1f0c8f0"
      unitRef="U_USD">97000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_5bf12700-9d89-42fe-a05e-9eab6a959a44"
      decimals="-3"
      id="F_181ddbf0-ea8c-4c39-ae2f-572324269bfd"
      unitRef="U_USD">97000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_f12f96af-4ef6-4036-8af1-c9430b5fc52c"
      decimals="-3"
      id="F_1f8819e5-d182-4861-b7a9-ccd6bb653827"
      unitRef="U_USD">1266000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_dcdf82fc-193a-4298-9486-cc4d6a00907a"
      decimals="-3"
      id="F_2aeb00db-7185-471d-b5a5-af18a71cd469"
      unitRef="U_USD">1266000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_25751d48-53ce-4703-a6df-367c93f42be7"
      decimals="-3"
      id="F_29e30029-b55e-4591-b55f-289b0baa78c4"
      unitRef="U_USD">2830000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919"
      decimals="-3"
      id="F_a5e98355-d954-481e-b8b1-6fb3ab611ee6"
      unitRef="U_USD">2830000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_2c385808-0a00-4606-b941-2ce07f0c914d"
      decimals="-3"
      id="F_ac219224-aa3e-4fe4-9124-c3f20f2ca8b1"
      unitRef="U_USD">17185000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b"
      decimals="-3"
      id="F_a9b32029-0796-412e-9212-2ac19bce796c"
      unitRef="U_USD">17185000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_13680e01-e354-48b1-b0e0-49543c6d0949"
      decimals="-3"
      id="F_351f8b04-4fab-4b9b-a3d8-1188005ab3db"
      unitRef="U_USD">3816000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c"
      decimals="-3"
      id="F_f0448e17-f47f-4c45-b695-f82dcbf27308"
      unitRef="U_USD">3816000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_6d9b48a4-c59f-4247-89dc-85833b05f4df"
      decimals="-3"
      id="F_ce75019d-547f-4887-a170-8e724062f609"
      unitRef="U_USD">181000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_444af4d9-1a4e-406f-8ea2-ce4eecdaaab3"
      decimals="-3"
      id="F_27ec3715-27f2-42b0-b87b-8464a3b13c4e"
      unitRef="U_USD">181000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_be4a23c8-e705-4d6e-9738-9bed8acbb3f3"
      unitRef="U_USD">24012000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_fdf3c3df-dbfc-4c3c-8fe5-a5f31cd30325"
      unitRef="U_USD">24012000</us-gaap:RestructuringCosts>
    <us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_948311bf-d6bf-4dc9-b67b-130f630e4553">&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Activity related to the Restructuring Plan for the nine months ended September 30, 2023 was as follows (amounts in thousands):&lt;/span&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:32.1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.78%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.84%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.28%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:7pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Restructuring Costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amounts Paid in the Nine Months Ended September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Non-Cash Restructuring Items&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;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-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;Restructuring Liability&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Severance &amp;amp; employee-related costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,830&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,478&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;214&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;138&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory write-off&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accelerated depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Facility exit and other exit costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;171&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;24,012&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,649&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;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-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;21,225&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;138&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock>
    <us-gaap:RestructuringCosts
      contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919"
      decimals="-3"
      id="F_37808adc-81c4-4a3a-bd2a-a87df49b253f"
      unitRef="U_USD">2830000</us-gaap:RestructuringCosts>
    <us-gaap:PaymentsForRestructuring
      contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919"
      decimals="-3"
      id="F_7fc1ca93-7044-4a9e-b021-261042b91f36"
      unitRef="U_USD">2478000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="C_a4103be0-35ec-41cb-9972-d87662b0d919"
      decimals="-3"
      id="F_a675df1d-5ac6-469a-b244-48dc8fca5361"
      unitRef="U_USD">214000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="C_5f41dc03-78a6-4cef-9956-f19adad0fb47"
      decimals="-3"
      id="F_4a04d82b-7d02-4505-8dd1-24cbb8dee026"
      unitRef="U_USD">138000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringCosts
      contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b"
      decimals="-3"
      id="F_d230a9ef-a133-4253-8d28-eae7c073d255"
      unitRef="U_USD">17185000</us-gaap:RestructuringCosts>
    <us-gaap:PaymentsForRestructuring
      contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b"
      decimals="-3"
      id="F_f11c0999-4d8c-4118-b7ff-891dbab42634"
      unitRef="U_USD">0</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="C_13def02c-f3c4-4658-a081-e45beb91156b"
      decimals="-3"
      id="F_0f7f4e02-0eb2-4c1d-bbe9-882469164645"
      unitRef="U_USD">17185000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="C_707154c4-f9cf-45d0-9ea3-cd1f8b0fc7ac"
      decimals="-3"
      id="F_3afe3273-1789-4708-aa21-d4e5a5c7ab7e"
      unitRef="U_USD">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringCosts
      contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c"
      decimals="-3"
      id="F_61d5de57-b3bb-4f2b-b839-3fbd30bd810c"
      unitRef="U_USD">3816000</us-gaap:RestructuringCosts>
    <us-gaap:PaymentsForRestructuring
      contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c"
      decimals="-3"
      id="F_06ff500a-f841-4677-a246-0c0995a8d9fd"
      unitRef="U_USD">0</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="C_8a463ebf-dc1e-4cc0-b65c-1099590e6d4c"
      decimals="-3"
      id="F_e5fa6839-a173-4db5-ae67-a95cfd3c4a24"
      unitRef="U_USD">3816000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="C_d7584a16-3fab-46d8-9bed-bfd144d60bcd"
      decimals="-3"
      id="F_32e23903-865a-4341-bcdd-4c1e5438b651"
      unitRef="U_USD">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringCosts
      contextRef="C_18ab726c-4cde-4a85-a8ea-d39f0739d066"
      decimals="-3"
      id="F_5f5a8d75-3a32-4cdd-a238-afbe7b58ab65"
      unitRef="U_USD">181000</us-gaap:RestructuringCosts>
    <us-gaap:PaymentsForRestructuring
      contextRef="C_18ab726c-4cde-4a85-a8ea-d39f0739d066"
      decimals="-3"
      id="F_040e5591-0e76-4aa8-a746-1d7e7c195e30"
      unitRef="U_USD">171000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="C_18ab726c-4cde-4a85-a8ea-d39f0739d066"
      decimals="-3"
      id="F_eece873e-b39a-4909-bdbc-f6fd351d3927"
      unitRef="U_USD">10000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="C_adc269c9-6b99-4085-86f1-8d8ded904dec"
      decimals="-3"
      id="F_949e67a3-5db5-4d2a-aed6-4870d400cb68"
      unitRef="U_USD">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringCosts
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_947ed04c-b39e-4423-a348-81cd3ae51542"
      unitRef="U_USD">24012000</us-gaap:RestructuringCosts>
    <us-gaap:PaymentsForRestructuring
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_52e6cba5-6aa4-4070-b5f2-5d0feff4c1fd"
      unitRef="U_USD">2649000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_2b3ed22b-839a-408c-840a-a5e86da0136d"
      unitRef="U_USD">21225000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_c44c0ea4-9473-46a0-b4b8-519e619ad174"
      unitRef="U_USD">138000</us-gaap:RestructuringReserve>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_49fabb5f-7560-465c-9002-9d2bf2d96a5d">&lt;div style="text-indent:0;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;5.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenues for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three and nine months ended September 30, 2023 and 2022 were as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:30.686%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Product revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;141,156&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;200,708&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;482,910&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;614,668&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Royalty and other income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;36&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;111&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;106&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;141,192&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;200,741&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;483,021&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;614,774&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;When disaggregating revenue, the Company considered all of the economic factors that may affect its revenues. Because substantially all of its revenues are from bioprocessing customers, there are no differences in the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows from any of its product lines. However, given that the Company&#x2019;s revenues are generated in different geographic regions, regulatory, economic and geopolitical factors within those regions could impact the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows. In addition, a significant portion of the Company&#x2019;s revenue is generated from a small number of customers; therefore, economic factors specific to these customers could impact the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Disaggregated revenue from contracts with customers by geographic region and revenue from significant customers can be found in Note 14, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Segment Reporting,&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; included in this report.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;For more information regarding our product revenue, see Note 6, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Revenue Recognition&#x201d; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;included in Part II, Item 8, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Financial Statements and Supplementary Data&#x201d; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;to our Form 10-K.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Contract Balances from Contracts with Customers&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table provides information about receivables and deferred revenue from contracts with customers as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:69.297%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.004%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.381%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.004%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.312999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balances from contracts with customers only:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accounts receivable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;106,158&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;116,247&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Deferred revenue (included in accrued liabilities and&lt;br/&gt;&#160;&#160;&#160;other noncurrent liabilities in the condensed consolidated &lt;br/&gt;&#160;&#160;&#160;balance sheets)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;11,447&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,631&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue recognized during periods presented relating to:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The beginning deferred revenue balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16,999&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,390&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The timing of revenue recognition, billings and cash collections results in the accounts receivable and deferred revenue balances on the Company&#x2019;s condensed consolidated balance sheets.&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_f0980a5a-f593-42a8-94e5-f6423f3f0379">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenues for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three and nine months ended September 30, 2023 and 2022 were as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:30.686%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.705%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.624%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Product revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;141,156&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;200,708&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;482,910&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;614,668&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Royalty and other income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;36&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;111&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;106&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;141,192&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;200,741&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;483,021&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;614,774&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_bf2625d5-d558-4316-975c-562ba4835ff4"
      decimals="-3"
      id="F_c4d82d00-1b87-413d-9d4c-02666560e8a5"
      unitRef="U_USD">141156000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_b45b33b5-979b-4ecb-a5f6-02ae2ceaace4"
      decimals="-3"
      id="F_eff2fcb5-29c9-486b-a52e-52f99223797c"
      unitRef="U_USD">200708000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_7c8c0df8-aa3f-453b-8083-8b757da047cb"
      decimals="-3"
      id="F_83a95e21-1977-4eb9-859b-7b54aef24787"
      unitRef="U_USD">482910000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_a6e126b9-84d4-4ed8-865f-4a752e5c2725"
      decimals="-3"
      id="F_42a4a013-ee44-4575-97b6-22470f8c9b66"
      unitRef="U_USD">614668000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_c79687e8-b4de-404a-84b9-20cbdcf033ac"
      decimals="-3"
      id="F_efb17cc9-70f9-4685-baee-e8ce36735545"
      unitRef="U_USD">36000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_b2e28058-999d-469a-8802-ed7b964035cd"
      decimals="-3"
      id="F_d792b731-e25b-4566-b2c2-c7c43c5541e2"
      unitRef="U_USD">33000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_c1477456-7b6e-4f58-88ac-6137ee30faad"
      decimals="-3"
      id="F_e95eedc4-6c96-4536-ab0f-50246eac8563"
      unitRef="U_USD">111000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_12e9a451-11af-470c-a8dd-46dfa3df6a69"
      decimals="-3"
      id="F_6df696d3-d2f6-43df-91a0-22fbfdf074c7"
      unitRef="U_USD">106000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_b281c1d6-8e13-4d37-9955-15fc8fbe9dc1"
      unitRef="U_USD">141192000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_747d6a15-e454-4f33-9c70-6efd2c4bb122"
      unitRef="U_USD">200741000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_ca9f06c6-5706-4f27-b6b6-7aa0fd18cf07"
      unitRef="U_USD">483021000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_e736e78b-340c-4b17-ad4f-e6afaba83334"
      unitRef="U_USD">614774000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_6ea4c26b-e8bc-460f-9e6d-b072a0142ee4">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table provides information about receivables and deferred revenue from contracts with customers as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:69.297%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.004%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.381%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.004%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.312999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balances from contracts with customers only:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accounts receivable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;106,158&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;116,247&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Deferred revenue (included in accrued liabilities and&lt;br/&gt;&#160;&#160;&#160;other noncurrent liabilities in the condensed consolidated &lt;br/&gt;&#160;&#160;&#160;balance sheets)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;11,447&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,631&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue recognized during periods presented relating to:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The beginning deferred revenue balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16,999&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,390&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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:ContractWithCustomerReceivableAfterAllowanceForCreditLoss
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_29e2bb5b-91e6-4889-b59b-998280c8afda"
      unitRef="U_USD">106158000</us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss>
    <us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_0831368b-fdb3-41c8-b828-1cef8f61f69d"
      unitRef="U_USD">116247000</us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss>
    <us-gaap:DeferredRevenue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_4c9b4342-9234-4f01-9121-065ee370983e"
      unitRef="U_USD">11447000</us-gaap:DeferredRevenue>
    <us-gaap:DeferredRevenue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_605178b8-63ae-46e7-b566-2a8e9b595c74"
      unitRef="U_USD">19631000</us-gaap:DeferredRevenue>
    <us-gaap:ContractWithCustomerLiability
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_dd9bf550-0c43-495d-8171-c64d26dfbc1c"
      unitRef="U_USD">16999000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_9610ad19-42a6-4bc8-855f-509ba291fe7c"
      unitRef="U_USD">13390000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_bba392ad-f569-4c51-834b-b87386eb963f">&lt;div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;6.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Goodwill and Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:12pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table represents the change in the carrying value of goodwill for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.016%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.935%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.049%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;855,513&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Acquisition of FlexBiosys, Inc.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14,355&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Measurement period adjustment &#x2013; FlexBiosys&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cumulative translation adjustment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;582&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;869,252&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During each of the fourth quarters of 2022, 2021 and 2020, the company completed its annual assessments and concluded that goodwill was not impaired in any of those years. The Company has not identified any "triggering" events which indicate an impairment of goodwill in the three and nine months ended September 30, 2023.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Intangible Assets&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Indefinite-lived intangible assets are reviewed for impairment at least annually. There has been &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; impairment of the Company&#x2019;s intangible assets for the periods presented.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:12pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Intangible assets, net, consisted of the following at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.471%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.222%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.139999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.222%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.139999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.222%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.9%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.002%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.681%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Useful Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Finite-lived intangible assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Technology &#x2013; developed&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;200,188&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;40,093&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;160,095&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;255,113&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;78,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;176,184&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7,709&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,653&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,056&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,332&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;694&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total finite-lived intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;466,276&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;123,247&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Indefinite-lived intangible asset:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;466,976&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;123,247&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,729&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Intangible assets, net, consisted of the following at December 31, 2022:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.735%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.048%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.048%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.054%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.088000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Useful Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Finite-lived intangible assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Technology &#x2013; developed&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;190,463&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30,992&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;159,471&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;252,934&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;66,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;186,375&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7,682&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,319&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,363&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,811&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;767&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total finite-lived intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;454,130&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;101,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;352,976&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Indefinite-lived intangible asset:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;454,830&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;101,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;353,676&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortization expense for finite-lived intangible assets was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for each of the three months ended September 30, 2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;22.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for each of the nine months ended September 30,&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively. &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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023, the Company expects to record the following amortization expense in future periods (amounts in thousands): &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.288%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.941%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.771%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;For the Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 (remaining three months)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7,504&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,558&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,192&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,159&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2028 and thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;218,396&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_93c8eb10-0f24-4f8e-88b0-17a28c2389fe">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table represents the change in the carrying value of goodwill for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 (amounts in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.016%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.935%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.049%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;855,513&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Acquisition of FlexBiosys, Inc.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14,355&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Measurement period adjustment &#x2013; FlexBiosys&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cumulative translation adjustment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;582&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Balance at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;869,252&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_41c3b743-0a23-4147-bc1d-d0160c550d4e"
      unitRef="U_USD">855513000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      decimals="-3"
      id="F_4290398a-f2e8-4b4c-aa2d-71bc98cdce2e"
      unitRef="U_USD">14355000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8"
      decimals="-3"
      id="F_2122f4c6-f7e6-487a-8a4b-456b52aa0d4b"
      unitRef="U_USD">-34000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_ee76263e-28a6-4096-98d3-e112ea980a78"
      unitRef="U_USD">582000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_43821940-2496-42e3-95a5-736060a73556"
      unitRef="U_USD">869252000</us-gaap:Goodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-6"
      id="F_f3d20663-673b-4003-b5a1-cccba6eb52c5"
      unitRef="U_USD">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_7353b80b-ed7f-485f-bf85-c89b3c029ea2">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Intangible assets, net, consisted of the following at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.471%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.222%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.139999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.222%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.139999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.222%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.9%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.002%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.681%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Useful Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Finite-lived intangible assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Technology &#x2013; developed&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;200,188&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;40,093&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;160,095&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;255,113&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;78,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;176,184&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7,709&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,653&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,056&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,332&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;694&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total finite-lived intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;466,276&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;123,247&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Indefinite-lived intangible asset:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;466,976&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;123,247&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,729&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Intangible assets, net, consisted of the following at December 31, 2022:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.735%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.048%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.048%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.054%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.088000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Useful Life&lt;br/&gt;(in years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="10" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Finite-lived intangible assets:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Technology &#x2013; developed&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;190,463&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30,992&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;159,471&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;240&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;252,934&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;66,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;186,375&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7,682&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,319&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,363&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other intangibles&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,811&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,044&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;767&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total finite-lived intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;454,130&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;101,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;352,976&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;16&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Indefinite-lived intangible asset:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Trademarks&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:middle;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:middle;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;454,830&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;101,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;353,676&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb"
      decimals="-3"
      id="F_249ead28-c956-4d52-b08f-7e3d7c237d29"
      unitRef="U_USD">200188000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb"
      decimals="-3"
      id="F_a628f12f-d40d-4f4f-8d33-e110a7705c11"
      unitRef="U_USD">40093000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb"
      decimals="-3"
      id="F_8fc9055f-bb3d-4865-bcab-6d6ef9412c59"
      unitRef="U_USD">160095000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_716e961e-5fc7-4c2a-a58f-3d8f2f0fdeeb"
      id="F_c1cda984-28bf-476f-abea-6ab347c04864">P16Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096"
      decimals="-3"
      id="F_1ae1b1bc-ade5-495a-b740-f053c45b0b2b"
      unitRef="U_USD">240000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096"
      decimals="-3"
      id="F_137f16ff-d480-442c-98d7-66f580860af4"
      unitRef="U_USD">240000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096"
      decimals="-3"
      id="F_2049e032-8f84-45bf-b306-d854ec0a9ab3"
      unitRef="U_USD">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_ef8c76f6-52f1-4fac-b9c0-078a97b0c096"
      id="F_ce9289e3-72a4-48ed-968c-0c24dbb3008d">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_efe12117-250c-4685-8a47-747fda96c561"
      decimals="-3"
      id="F_da848586-d859-4162-9186-f3ed874c4a48"
      unitRef="U_USD">255113000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_efe12117-250c-4685-8a47-747fda96c561"
      decimals="-3"
      id="F_7ee29cb0-88a8-48ee-8c03-c4c249c4b4b1"
      unitRef="U_USD">78929000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_efe12117-250c-4685-8a47-747fda96c561"
      decimals="-3"
      id="F_7313a81d-d934-4d6b-b114-2d55f6c873fb"
      unitRef="U_USD">176184000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_efe12117-250c-4685-8a47-747fda96c561"
      id="F_1c5f0f01-891a-42b7-b1d3-9c2953ab9196">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9"
      decimals="-3"
      id="F_bdd4ec9d-e79f-49d5-81c8-8f344ce1f940"
      unitRef="U_USD">7709000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9"
      decimals="-3"
      id="F_44ac8741-c398-40c3-86b7-339b2ca7df90"
      unitRef="U_USD">1653000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9"
      decimals="-3"
      id="F_b2ccb861-eafe-4289-8a0c-75d0d57e3b27"
      unitRef="U_USD">6056000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_827ccb42-4138-495c-a08b-41aaf99d90d9"
      id="F_18010d59-45f7-4fe1-87e4-6b31b52bb98a">P19Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9"
      decimals="-3"
      id="F_818e90ab-099e-43ef-b93d-f4046f7a56a0"
      unitRef="U_USD">3026000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9"
      decimals="-3"
      id="F_c06393bb-68e4-4356-a7b6-ba101a926ec2"
      unitRef="U_USD">2332000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9"
      decimals="-3"
      id="F_d208d1e4-18cc-4f2d-9c36-455c4558c860"
      unitRef="U_USD">694000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_5520736f-0037-44d4-9b4c-7378ee9e38c9"
      id="F_8f4d2e1e-370c-468b-8fa6-954ade0c55fc">P4Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_2d6f3569-d88a-4ebd-a58d-dc1d9cf0b78d"
      unitRef="U_USD">466276000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_2d1b5fcf-36f7-4a39-8d49-cf2e6512c6f4"
      unitRef="U_USD">123247000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_803a0ee3-9d96-4c28-85e3-e0dcb20319b4"
      unitRef="U_USD">343029000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      id="F_2e9276ba-8f25-4eac-add3-1f6098662f4d">P16Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="C_51d37a73-1d8b-4c15-9836-7661a6ef0182"
      decimals="-3"
      id="F_ae3cc3b3-1d22-4ca8-811d-a7337d4060ff"
      unitRef="U_USD">700000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsNet
      contextRef="C_51d37a73-1d8b-4c15-9836-7661a6ef0182"
      decimals="-3"
      id="F_011594bc-052e-47a2-8777-3afc4a7b457e"
      unitRef="U_USD">700000</rgen:IndefiniteLivedIntangibleAssetsNet>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_6ad8a66d-a240-43d3-ab08-914c9ed1f562"
      unitRef="U_USD">466976000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_24ad6823-2d04-430f-9e5f-e3e89bb1c7d6"
      unitRef="U_USD">123247000</rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_657584ef-3200-4696-b491-1d6b638f8063"
      unitRef="U_USD">343729000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86"
      decimals="-3"
      id="F_24041cfd-8c80-434c-bb27-c8c7f211c061"
      unitRef="U_USD">190463000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86"
      decimals="-3"
      id="F_00a1e878-937f-498f-a4f8-d8a776a4e778"
      unitRef="U_USD">30992000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86"
      decimals="-3"
      id="F_c3941d7a-64c8-4eb6-979c-42b93312e817"
      unitRef="U_USD">159471000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_0c142833-a43f-447e-b3a8-8a0d080dec86"
      id="F_d399485d-0179-4bad-8203-7d510092ed68">P16Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96"
      decimals="-3"
      id="F_cd6c9865-c166-4974-8d7a-80afba63f0ce"
      unitRef="U_USD">240000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96"
      decimals="-3"
      id="F_b3d3477f-6e5a-4a6b-a01c-cbae7c443830"
      unitRef="U_USD">240000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96"
      decimals="-3"
      id="F_7c02c955-d5fb-441b-8e50-9f7392eccbce"
      unitRef="U_USD">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_ec9cde0e-6aaa-469b-a5be-1439fac73e96"
      id="F_fa18f1de-d88c-4936-acea-4488d491ae12">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2"
      decimals="-3"
      id="F_762380a2-53a7-4461-9f93-7724fcb66741"
      unitRef="U_USD">252934000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2"
      decimals="-3"
      id="F_bd76ee0d-22ba-475b-94b6-17bdb99db191"
      unitRef="U_USD">66559000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2"
      decimals="-3"
      id="F_fd03b416-0773-40d5-974c-87fed491d493"
      unitRef="U_USD">186375000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_8bfc7958-631c-40ff-b4c3-798f463ed1f2"
      id="F_9a66a6d1-cecc-45d5-8653-eb62e0bdbaa7">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274"
      decimals="-3"
      id="F_fdb39b35-f6d9-4665-b25f-2a5d9bd0ad12"
      unitRef="U_USD">7682000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274"
      decimals="-3"
      id="F_8702b7ec-c565-413a-a3d3-4a849b237222"
      unitRef="U_USD">1319000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274"
      decimals="-3"
      id="F_f7cfd6f3-3421-4488-b19b-f992cb84bbd0"
      unitRef="U_USD">6363000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_e1d7fdf5-4f60-4fa6-aff2-ef0d7dafa274"
      id="F_d69de033-2adb-462f-ad82-50d7933311fb">P19Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b"
      decimals="-3"
      id="F_7c773cc0-63f1-4013-9e7d-c04130833c79"
      unitRef="U_USD">2811000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b"
      decimals="-3"
      id="F_b4d881a5-b620-42d4-bec3-857a8513f06b"
      unitRef="U_USD">2044000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b"
      decimals="-3"
      id="F_144173b7-f509-44b5-817a-3d0e53c11436"
      unitRef="U_USD">767000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_53c23e08-45bc-4752-b281-a8c43e64852b"
      id="F_e823346f-f13a-4f03-a077-ea62206603c2">P4Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_a1a1cf41-d452-4685-a3c4-0e19bdb0d792"
      unitRef="U_USD">454130000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_7cd12f0b-5ffa-4940-8789-f89d262ce37d"
      unitRef="U_USD">101154000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_236f74c8-0ab2-4ed5-a1d4-93f12dd9b35f"
      unitRef="U_USD">352976000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      id="F_17e0e420-ef20-4fdd-b752-4b74f27947d0">P16Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="C_4d2c8145-0800-447b-8bcb-bcadb2866c1a"
      decimals="-3"
      id="F_9e9d0bf1-7f97-4085-ac67-d3df9d1f5dce"
      unitRef="U_USD">700000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsNet
      contextRef="C_4d2c8145-0800-447b-8bcb-bcadb2866c1a"
      decimals="-3"
      id="F_16cd23f4-ba96-4e36-91e5-1469c0e63caa"
      unitRef="U_USD">700000</rgen:IndefiniteLivedIntangibleAssetsNet>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_478e085b-3f8e-4b0b-82e6-0226b3ea643a"
      unitRef="U_USD">454830000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_37caf8af-a503-4c9d-b67f-07ba0134fac3"
      unitRef="U_USD">101154000</rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_2820a450-20f9-4bdb-878b-b918ff122bf3"
      unitRef="U_USD">353676000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-5"
      id="F_e97b481d-7a28-4e8c-896a-356edaf81fbf"
      unitRef="U_USD">7500000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-5"
      id="F_a732ed37-55e5-4290-8ba5-3ed3f7a77fdc"
      unitRef="U_USD">6600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-5"
      id="F_32dc0d3e-c3e4-437e-ba32-06f3c6f19d33"
      unitRef="U_USD">22400000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-5"
      id="F_079eecbd-75a8-4800-8996-ab93cd6eb070"
      unitRef="U_USD">19800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_a07b0ca1-b49e-4248-bb52-4ef0b37ca141">&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023, the Company expects to record the following amortization expense in future periods (amounts in thousands): &lt;/span&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.288%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.941%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.771%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Estimated&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-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:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;For the Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 (remaining three months)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7,504&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,558&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,220&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,192&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,159&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2028 and thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;218,396&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;343,029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_0db4b008-bfa9-416b-985d-1799adcd0d30"
      unitRef="U_USD">7504000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_68b816d8-c772-4d64-aada-28f92199a85e"
      unitRef="U_USD">29558000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_d0cc7e4a-b004-44a1-97f8-50056a5a9306"
      unitRef="U_USD">29220000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_96d10115-36d0-47e8-9d78-665c9e3bc9b2"
      unitRef="U_USD">29192000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_30b7ad75-9873-44a8-a1e8-1ce7215e2d2c"
      unitRef="U_USD">29159000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_e0e9c68d-c8b2-4d6a-adca-e92c28871feb"
      unitRef="U_USD">218396000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_aa149ccf-6cb9-4c96-ba8e-a1848b421984"
      unitRef="U_USD">343029000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_4afc1eba-9056-40a4-85b3-a5b1687d57ba">&lt;div style="text-indent:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;7.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Consolidated Balance Sheet Detail&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;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-style:italic;min-width:fit-content;"&gt;Inventories, net&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventories, net consists of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:71.125%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.722%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.715%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.722%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.715%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Raw materials&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;128,894&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;149,438&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Work-in-process&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,630&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,183&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Finished products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;76,848&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;82,656&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total inventories, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;211,372&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;238,277&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Property, Plant and Equipment&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment consist of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:70.077%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.533%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.45%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:3.491%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.45%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Land&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,003&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Buildings&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,637&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,599&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Leasehold improvements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;124,925&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;115,672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;111,625&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;94,613&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Furniture, fixtures and office equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8,786&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8,307&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Computer hardware and software&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;35,359&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,813&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Construction in progress&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;37,679&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;31,553&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;410&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;420&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total property, plant and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;321,371&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;282,980&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Less &#x2013; Accumulated depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;119,753&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;92,307&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total property, plant and equipment, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;201,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;190,673&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;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-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Accrued Liabilities&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accrued liabilities consist of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:62.175%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.815%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.754000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.502%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.754000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Employee compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,727&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;33,522&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Deferred revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10,879&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,283&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income taxes payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,446&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,459&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15,491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15,856&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total accrued liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42,543&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;71,120&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_0da27623-f561-4c85-a9db-98b03a334042">&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;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-style:italic;min-width:fit-content;"&gt;Inventories, net&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventories, net consists of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:71.125%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.722%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.715%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.722%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.715%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Raw materials&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;128,894&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;149,438&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Work-in-process&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,630&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,183&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Finished products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;76,848&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;82,656&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total inventories, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;211,372&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;238,277&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_79bfd3be-85aa-4028-95d0-1810cc896486"
      unitRef="U_USD">128894000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_cdebbfdf-0bd8-4bf6-b16e-fe72389f565a"
      unitRef="U_USD">149438000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_2ed93eaa-890b-466e-87bc-ce02851092d6"
      unitRef="U_USD">5630000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_b4d4271a-5426-46d2-b4a8-a742f20872ad"
      unitRef="U_USD">6183000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_40fec58b-9dd8-4816-b434-fbd7047bccb4"
      unitRef="U_USD">76848000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_4bc60585-9c28-4db4-b060-14378609b49b"
      unitRef="U_USD">82656000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_e3581974-c605-4e65-b171-b27f53be0f24"
      unitRef="U_USD">211372000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_64ea8fb8-0c6e-4cea-a5ad-49e9f4bfbed7"
      unitRef="U_USD">238277000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_8cb5ca6b-13ac-4762-a67c-9c634165165b">&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Property, Plant and Equipment&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment consist of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:70.077%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.533%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.45%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:3.491%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.45%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Land&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,003&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Buildings&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,637&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,599&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Leasehold improvements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;124,925&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;115,672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;111,625&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;94,613&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Furniture, fixtures and office equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8,786&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8,307&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Computer hardware and software&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;35,359&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;29,813&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Construction in progress&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;37,679&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;31,553&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;410&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;420&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total property, plant and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;321,371&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;282,980&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Less &#x2013; Accumulated depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;119,753&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;92,307&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total property, plant and equipment, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;201,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;190,673&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:Land
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_a5c876fb-db9b-48b9-9ef3-ca12f77ec07d"
      unitRef="U_USD">950000</us-gaap:Land>
    <us-gaap:Land
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_90d0e4f2-f912-45fa-8c0f-43aea9034919"
      unitRef="U_USD">1003000</us-gaap:Land>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_c334c811-81db-47f4-904b-aecc56f5dfd5"
      unitRef="U_USD">1637000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_3ab60f2e-1cb6-48e2-9efb-c2b949ff7cda"
      unitRef="U_USD">1599000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_37633973-6a40-4b95-ae2f-335d869563b2"
      unitRef="U_USD">124925000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_b88a33e9-030e-4ac7-b6df-11d541f9fbf4"
      unitRef="U_USD">115672000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_6c78afc7-7588-4981-b562-ec491b8b15cd"
      unitRef="U_USD">111625000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_efc428ca-0afe-4518-8e59-d4d26d170045"
      unitRef="U_USD">94613000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_26d5da7d-8618-4454-a94d-54b8b0e92ff4"
      unitRef="U_USD">8786000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_ca59d3c7-c75e-4ade-8fd7-10cff494b7cc"
      unitRef="U_USD">8307000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_a87cf5e1-7c2b-4b3e-b05a-71f8a18c9390"
      unitRef="U_USD">35359000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_9554871b-4940-4aa7-a246-a6fbfab7d22f"
      unitRef="U_USD">29813000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_a029114b-dae9-4c1e-889d-037d1085f15c"
      unitRef="U_USD">37679000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_071a34a4-d315-4119-8e49-93bc6fb7b9ac"
      unitRef="U_USD">31553000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentOther
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_0290e76d-bb0d-4a57-9f6d-51b378ff778e"
      unitRef="U_USD">410000</us-gaap:PropertyPlantAndEquipmentOther>
    <us-gaap:PropertyPlantAndEquipmentOther
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_5950c0f1-e650-4c8e-82de-0acbce0944c0"
      unitRef="U_USD">420000</us-gaap:PropertyPlantAndEquipmentOther>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_d1171e5e-c03a-4b3f-9dae-b410052ebb23"
      unitRef="U_USD">321371000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_234d3a88-0fae-4625-9306-682dd85656a5"
      unitRef="U_USD">282980000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_2a0d228f-e8e0-44bb-91d3-9b1decf9dfa2"
      unitRef="U_USD">119753000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_e39ad7c2-12e4-455b-bbbc-bc02a00e9f76"
      unitRef="U_USD">92307000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_13b35fd5-c233-43a9-933f-0510bd1e8aea"
      unitRef="U_USD">201618000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_87421c9b-3b41-4140-a268-bfcbf4ea8187"
      unitRef="U_USD">190673000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_1064e469-a1a6-4c64-8dd8-34153f0e5995">&lt;p style="margin-left:3.333%;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-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Accrued Liabilities&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Accrued liabilities consist of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:62.175%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.815%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.754000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.502%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.754000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Employee compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;13,727&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;33,522&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Deferred revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10,879&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,283&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income taxes payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,446&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,459&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15,491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15,856&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total accrued liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42,543&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;71,120&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_20a85909-5943-4d6c-aa9c-4cc535e19441"
      unitRef="U_USD">13727000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_b8f42d77-9b7a-494b-95b8-adaa48c45612"
      unitRef="U_USD">33522000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_066d72d2-5e5c-46ad-86b0-3c5c5948188e"
      unitRef="U_USD">10879000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_8f8e492d-e2e8-4b5f-a0fe-e3112f6d4b00"
      unitRef="U_USD">19283000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_859eab7e-073e-4df4-a4d5-75c9fdea4966"
      unitRef="U_USD">2446000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_6118e9b4-97e4-4c87-96e7-a1ed5bfafc52"
      unitRef="U_USD">2459000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_0fe6b85c-9ced-4dff-b286-bc6b9716986a"
      unitRef="U_USD">15491000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_2fe88682-e227-4331-8669-9a40e37d5870"
      unitRef="U_USD">15856000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_7b603ba7-6ac6-4388-be03-08be9617669c"
      unitRef="U_USD">42543000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="-3"
      id="F_09aeee77-0a93-439c-aa53-703d056c3ced"
      unitRef="U_USD">71120000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LongTermDebtTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_4e2c69ff-59a6-4562-8ad8-142d0f18e1be">&lt;div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;8.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Convertible Senior Notes &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;0.375% Convertible Senior Notes due 2024&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;On July 19, 2019, the Company issued $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;287.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million aggregate principal pursuant to the 2019 Notes, which includes the underwriters&#x2019; exercise in full of an option to purchase an additional $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;37.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million aggregate principal amount of 2019 Notes (the &#x201c;Notes Offering&#x201d;). The net proceeds of the Notes Offering, after deducting underwriting discounts and commissions and other related offering expenses payable by the Company, were approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;278.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million. The 2019 Notes are senior, unsecured obligations of the Company, and bear interest at a rate of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.375&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per year. &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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; The 2019 Notes 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;July 15, 2024&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, unless earlier repurchased or converted in accordance with their terms.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During the third quarter of 2023, the closing price of the Company&#x2019;s common stock exceeded &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;130&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of the conversion price of the 2019 Notes for more than &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;20&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; trading days of the last &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;30&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; consecutive trading days of the quarter. As a result, the 2019 Notes are convertible at the option of the holders of the 2019 Notes during the fourth quarter of 2023, the quarter immediately following the quarter when the conditions are met, as stated in the terms of the 2019 Notes. These conditions have been met each quarter since the third quarter of 2020. As a result, $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million aggregate principal amount of the 2019 Notes have been requested for conversion by the note holders since the issuance of the 2019 Notes and all conversions have settled as of September 30, 2023. The conversions resulted in the issuance of a nominal number of shares of the Company&#x2019;s common stock to the note holders. Because the 2019 Notes mature within one year of the report date, the Company classifies the carrying value of the 2019 Notes as current liabilities on the Company&#x2019;s condensed consolidated balance sheets at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The net carrying value of the liability component of the 2019 Notes is as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:67.161%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.622%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.797%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.622%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.797%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;br/&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.375% Convertible Senior Notes due 2024:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Principal amount&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;287,437&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;287,470&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unamortized debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,855&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net carrying amount&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;285,956&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;284,615&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;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;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table sets forth total interest expense recognized related to the 2019 Notes:&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.908%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.427%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.658%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.427%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.658%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contractual interest expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;269&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;270&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;808&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;809&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;459&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;455&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,373&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,360&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;728&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;725&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,169&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Effective interest rate of the liability component&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;At September 30, 2023 and December 31, 2022, the carrying value of the 2019 Notes was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;286.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;284.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, net of unamortized discount, and the fair value of the 2019 Notes was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;405.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;452.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. The fair value of the 2019 Notes was determined based on the most recent trade activity of the 2019 Notes at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 and December 31, 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/p&gt;</us-gaap:LongTermDebtTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5"
      decimals="-5"
      id="F_66731a6f-7521-45c1-8009-2d3c4da9269e"
      unitRef="U_USD">287500000</us-gaap:DebtInstrumentFaceAmount>
    <rgen:OptionToPurchaseAdditionalDebtFaceAmount
      contextRef="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5"
      decimals="-5"
      id="F_c448e7a5-e669-498d-9791-10b765f4f71f"
      unitRef="U_USD">37500000</rgen:OptionToPurchaseAdditionalDebtFaceAmount>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="C_74b69daa-9fb8-4fbb-9dbf-2e1bb9c47c30"
      decimals="-5"
      id="F_83f239a3-5522-4861-b06b-a569e49d8b72"
      unitRef="U_USD">278500000</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_b9aeb819-8aa4-48be-98f0-c0ca8faf51f5"
      decimals="5"
      id="F_c74d3766-1dbe-4e6e-b232-cccd75007fec"
      unitRef="U_pure">0.00375</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateTerms
      contextRef="C_bad47599-6652-49f6-bc88-bd914056710b"
      id="F_cf930cba-101a-4ffd-ba32-678dd8d44ab1">Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020.</us-gaap:DebtInstrumentInterestRateTerms>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="C_bad47599-6652-49f6-bc88-bd914056710b"
      id="F_fc780286-c19a-498b-a638-5a1b8b91c720">2024-07-15</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="C_bad47599-6652-49f6-bc88-bd914056710b"
      decimals="2"
      id="F_417aab10-f617-4361-86b6-e83aa2ea1e51"
      unitRef="U_pure">1.30</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_e222988e-2de6-4ead-9059-226f18fb51c8"
      unitRef="U_Days">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_4946326e-8173-49d0-b4fe-3f4959289b99"
      unitRef="U_Days">30</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <rgen:DebtInstrumentConvertibleIntoEquity
      contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d"
      decimals="-5"
      id="F_a7d60c54-86fa-4d26-9e87-55e9416cf317"
      unitRef="U_USD">100000</rgen:DebtInstrumentConvertibleIntoEquity>
    <us-gaap:ConvertibleDebtTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_d9d44e34-a799-4949-8ac2-c55bb1611796">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The net carrying value of the liability component of the 2019 Notes is as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:67.161%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.622%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.797%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.622%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.797%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;br/&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.375% Convertible Senior Notes due 2024:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Principal amount&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;287,437&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;287,470&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unamortized debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,855&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net carrying amount&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;285,956&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;284,615&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ConvertibleDebtTableTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d"
      decimals="-3"
      id="F_70ec66ff-9c4d-41ab-9083-b50660c470ab"
      unitRef="U_USD">287437000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3"
      decimals="-3"
      id="F_279e99e1-1526-4001-83a2-91f8616066a2"
      unitRef="U_USD">287470000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d"
      decimals="-3"
      id="F_c0ce1200-ff79-4218-9e16-d4b94c0b0d9e"
      unitRef="U_USD">1481000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3"
      decimals="-3"
      id="F_266a7b5c-3290-4843-a359-a6d7d9fc732c"
      unitRef="U_USD">2855000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:ConvertibleNotesPayableCurrent
      contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d"
      decimals="-3"
      id="F_255e545b-2746-4d23-abee-fdcfb928417b"
      unitRef="U_USD">285956000</us-gaap:ConvertibleNotesPayableCurrent>
    <us-gaap:ConvertibleNotesPayableCurrent
      contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3"
      decimals="-3"
      id="F_205542ec-9b3f-4563-a598-9da641e634b1"
      unitRef="U_USD">284615000</us-gaap:ConvertibleNotesPayableCurrent>
    <rgen:ScheduleOfConvertiableNoteInterestExpense
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_dfa2fee7-9003-4d3c-a9c8-3c19b3ee369a">&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table sets forth total interest expense recognized related to the 2019 Notes:&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.908%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.427%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.658%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.427%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.23%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.658%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contractual interest expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;269&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;270&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;808&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;809&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;459&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;455&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,373&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,360&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;728&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;725&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,169&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Effective interest rate of the liability component&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</rgen:ScheduleOfConvertiableNoteInterestExpense>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_44878841-73f0-4c7f-abad-89340017dd1c"
      unitRef="U_USD">269000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_031f629c-356e-49dd-81de-daf97a39f4a7"
      unitRef="U_USD">270000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_7449aa6d-7f98-4990-820b-b8ff4dc95aec"
      unitRef="U_USD">808000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_bd02c077-ff49-4f64-b442-f50e338d180d"
      unitRef="U_USD">809000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_4c45f0dc-6a7f-4bb4-b6e8-07e07cf1f7ce"
      unitRef="U_USD">459000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_08c64ed5-14b5-4c76-b708-73fe0a6814c7"
      unitRef="U_USD">455000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_a2a69b64-a9bd-4459-b05c-72b2e5e5e4eb"
      unitRef="U_USD">1373000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_5531d23b-aaa2-45e6-b782-f74394856ac2"
      unitRef="U_USD">1360000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:InterestExpenseDebt
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_d4059969-778f-4d2b-8615-f00292f0a1a3"
      unitRef="U_USD">728000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_3ce7f971-ee07-4d18-82ba-c623005786f3"
      unitRef="U_USD">725000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_0aed0973-e0d6-4f56-aae1-c5e4ff9ae1be"
      unitRef="U_USD">2181000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_5c41f78b-bce7-4a07-9693-089b4bfebfeb"
      unitRef="U_USD">2169000</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="3"
      id="F_b885315d-5bd8-4f63-9868-dbb970b73e66"
      unitRef="U_pure">0.01</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737"
      decimals="3"
      id="F_39d98e38-ae6f-4c05-b3fd-e9c5800f95f9"
      unitRef="U_pure">0.01</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="3"
      id="F_d13ae6bf-e4f8-44af-a39b-da8f44dabaca"
      unitRef="U_pure">0.01</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="C_85ad93a0-d38a-4255-8513-bef07e087737"
      decimals="3"
      id="F_5e5e4732-e702-4b43-b32d-5d949c92d9d9"
      unitRef="U_pure">0.01</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:LongTermDebt
      contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d"
      decimals="-5"
      id="F_9bf9a5cb-4878-4071-913b-1d4583f6aeb8"
      unitRef="U_USD">286000000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3"
      decimals="-5"
      id="F_02ff33f1-8120-44b5-8083-78ed1f0767e5"
      unitRef="U_USD">284600000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtFairValue
      contextRef="C_63b32e62-4479-4be9-a171-379efbd3634d"
      decimals="-5"
      id="F_d8b06ddc-ab53-41b4-b15f-c92350fb0221"
      unitRef="U_USD">405300000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="C_eabc34eb-d459-4a2b-bab3-011dd910bea3"
      decimals="-5"
      id="F_ef7cf9ca-0dd6-43a7-a8ec-0b164ccaa5f5"
      unitRef="U_USD">452000000</us-gaap:LongTermDebtFairValue>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_c468044c-6b0e-4b16-852c-a0f9cf5753cd">&lt;div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;9.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Stockholders&#x2019; Equity &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Stock Option and Incentive Plans&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Under the Company&#x2019;s current 2018 Stock Option and Incentive Plan (the &#x201c;2018 Plan&#x201d;), the number of shares of the Company&#x2019;s common stock that were reserved and available for issuance is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,778,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;plus the number of shares of common stock that were available for issuance under the Company&#x2019;s previous equity plans. The shares of common stock underlying any awards under the 2018 Plan and previous equity plans (together, the &#x201c;Plans&#x201d;) that are forfeited, canceled or otherwise terminated (other than by&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;exercise) &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;shall be added back to the shares of stock available for issuance under the 2018 Plan. At September 30, 2023, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,704,118&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares were available for future grants under the 2018 Plan.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Stock Issued for Earnout Payment&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In May 2023, the Company issued &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42,621&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares of its common stock to former securityholders of Avitide to satisfy the contingent consideration obligation established under the Agreement and Plan of Merger and Reorganization (the "Avitide Agreement") which the Company entered into as part of the acquisition of Avitide in September 2021. See Note 4, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;"Acquisitions", &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;included in Part II, Item 8 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;"Financial Statements and Supplemental Data" &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;to our Form 10-K, for additional information on the acquisition of Avitide and the contingent consideration. The shares represent &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of the earnout consideration earned in the First Earnout Year (as defined in the Avitide Agreement).&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table presents stock-based compensation expense in the Company&#x2019;s condensed consolidated statements of comprehensive income:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:55.172%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cost of product revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;393&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;610&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,506&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,847&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Research and development&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;534&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,095&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,955&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Selling, general and administrative&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,280&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,010&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15,509&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,252&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:15pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total stock-based compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,373&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;21,054&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;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="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Stock Options&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:12pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Information regarding option activity for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 under the Plans is summarized below:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.674%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.221%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.893%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.674%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.221%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.133%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted&lt;br/&gt;average&lt;br/&gt;exercise&lt;br/&gt;price&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&lt;br/&gt;(in Years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&lt;br/&gt;(in Thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options outstanding at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;609,965&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;71.74&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;66,069&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;173.08&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Exercised&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;22,872&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15.52&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Forfeited/expired/cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;199.71&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options outstanding at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;651,162&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;83.60&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options exercisable at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;371,782&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;61.46&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Vested and expected to vest at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;637,673&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;83.18&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5.73&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;53,173&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:3pt;border-bottom:0.75pt solid;margin-right:83.333%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.635986778229898%;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Represents the number of vested options as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; adjusted for estimated forfeiture rates of &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to non-executive level employees and &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to executive level employees.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The aggregate intrinsic value in the table above represents the total pre-tax intrinsic value (the difference between the closing price of the common stock on September 30, 2023, the last business day of the third quarter of 2023, of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;159.01&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; per share and the exercise price of each in-the-money option) that would have been received by the option holders had all option holders exercised their options on September 30, 2023. The aggregate intrinsic value of stock options exercised during the nine months ended September 30, 2023 and 2022 was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;9.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The weighted average grant date fair value of options granted during the nine months ended September 30, 2023 and 2022 was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;85.70&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;76.64&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Stock Units&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The fair value of stock units is calculated using the closing price of the Company&#x2019;s common stock on the date of grant. The Company recognizes expense on awards with service-based vesting over the employee&#x2019;s requisite service period on a straight-line basis. The Company recognizes expense on performance-based awards over the vesting period based on the probability that the performance metrics will be achieved. &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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 under the Plans is summarized below:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:65.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.121%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.129999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.601%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.59%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.601%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted Average&lt;br/&gt;Grant Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unvested at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;531,034&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;142.57&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Awarded&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;175,475&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;174.86&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;173,714&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;118.70&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Forfeited/cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;53,920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;179.53&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unvested at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;478,875&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;188.41&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Vested and expected to vest at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;411,646&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;153.79&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:6.667%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.571084182443509%;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Represents the number of vested stock units as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; adjusted for estimated forfeiture rates of &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to non-executive level employees and &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to executive level employees. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The aggregate intrinsic value of stock units vested during the nine months ended September 30, 2023 and 2022 was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;32.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;40.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The weighted average grant date fair value of stock units granted during the nine months ended September 30, 2023 and 2022 was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;174.86&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;191.55&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As of September 30, 2023, there was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;66.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million of total unrecognized compensation cost related to unvested share-based awards. This cost is expected to be recognized over a weighted average remaining requisite service period 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2.88&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; years. The Company expects &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,156,681&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; unvested options and stock units 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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="C_eb79228f-93fc-480b-83ba-2bc57423f132"
      decimals="INF"
      id="F_ea470793-6366-413f-b512-2d8d695cb6e2"
      unitRef="U_shares">2778000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="C_3d1ad89d-d8d1-4cf9-ab80-18bb03f83d45"
      decimals="INF"
      id="F_41b158f9-cc4d-41a5-873a-e4d13d933620"
      unitRef="U_shares">1704118</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_7138c14d-581b-4fe8-a592-dfc0496070f4"
      decimals="INF"
      id="F_74977760-647a-441d-be3e-a63ff7cc2b08"
      unitRef="U_shares">42621</us-gaap:CommonStockSharesIssued>
    <rgen:EarnoutConsiderationEarned
      contextRef="C_7138c14d-581b-4fe8-a592-dfc0496070f4"
      decimals="2"
      id="F_7b0bf0a8-6372-44dd-9bea-77ffe98a850d"
      unitRef="U_pure">0.50</rgen:EarnoutConsiderationEarned>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_97bd9308-e58e-4880-baf7-578d651c0c8e">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table presents stock-based compensation expense in the Company&#x2019;s condensed consolidated statements of comprehensive income:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:55.172%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.343%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.8629999999999995%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cost of product revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;393&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;610&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,506&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,847&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Research and development&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;534&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,095&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,955&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Selling, general and administrative&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,280&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5,010&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15,509&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;17,252&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:15pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total stock-based compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,373&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;19,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;21,054&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:ShareBasedCompensation
      contextRef="C_1e784908-4b51-4615-ac72-38d8f501004d"
      decimals="-3"
      id="F_8a84bc8f-19d8-4c51-8ec7-db60f143cd6f"
      unitRef="U_USD">393000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_46cab3c6-b18a-4413-a555-92293dfea9bd"
      decimals="-3"
      id="F_b22e7a2c-bbe6-48b0-8b27-7ebdea0eeee1"
      unitRef="U_USD">610000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_24b3d094-f833-451c-b00d-cc5909ca2b28"
      decimals="-3"
      id="F_9ddc4e48-9238-4c9f-ac77-05cbea58f200"
      unitRef="U_USD">1506000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_cffd0f39-00b9-4846-8a44-558f550e0943"
      decimals="-3"
      id="F_3b6fd17b-1df8-4eba-bc14-eabdf3c8ec9d"
      unitRef="U_USD">1847000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_5f45ba16-985f-4eae-a153-2cd561ae1db1"
      decimals="-3"
      id="F_616b4819-a10d-40fd-88ac-9dd6d7918717"
      unitRef="U_USD">700000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_c7cc198a-634c-4a85-9821-8f902377f89e"
      decimals="-3"
      id="F_072a7012-2a8f-4902-a046-09bb8968f82c"
      unitRef="U_USD">534000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_37ad1c18-3905-4747-8acb-2d3e3711075a"
      decimals="-3"
      id="F_64ff005d-98a9-4e89-993d-17b259f62907"
      unitRef="U_USD">2095000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_a588eb85-a8e0-422a-9c8a-0205b7e8ee16"
      decimals="-3"
      id="F_b7562b6b-ac08-4707-8006-7533d01d426c"
      unitRef="U_USD">1955000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_f12f96af-4ef6-4036-8af1-c9430b5fc52c"
      decimals="-3"
      id="F_db6a2f7d-03fd-4147-9f34-d6b69a23ff6a"
      unitRef="U_USD">5280000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_703f7c33-5d64-43ae-99f7-80349032df8f"
      decimals="-3"
      id="F_3e8b2708-e238-4f64-8574-bcaefabdb36e"
      unitRef="U_USD">5010000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_dcdf82fc-193a-4298-9486-cc4d6a00907a"
      decimals="-3"
      id="F_805e7cfc-6f8a-4877-a870-6c26964ae254"
      unitRef="U_USD">15509000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_3012615e-9bbf-4cb7-85d5-f097eb6fec6c"
      decimals="-3"
      id="F_75ecd8fc-d761-48cd-a013-d8e062117d63"
      unitRef="U_USD">17252000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_91ca47bb-d7d1-41b3-9359-4ec06884187f"
      unitRef="U_USD">6373000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_961cf7dd-c07a-4dd5-b481-78dfcf1483a7"
      unitRef="U_USD">6154000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_6f9a0c40-6ea1-4551-b6e7-dd35b48f5d03"
      unitRef="U_USD">19110000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_98c0dd2c-3d04-42e3-b094-a7b19904b9f4"
      unitRef="U_USD">21054000</us-gaap:ShareBasedCompensation>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_f01c9e49-41e8-411b-bb6e-1fcc383aee27">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Information regarding option activity for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 under the Plans is summarized below:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:50.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.674%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.221%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.893%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.674%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.221%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.133%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted&lt;br/&gt;average&lt;br/&gt;exercise&lt;br/&gt;price&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&lt;br/&gt;(in Years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&lt;br/&gt;(in Thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options outstanding at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;609,965&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;71.74&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;66,069&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;173.08&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Exercised&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;22,872&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15.52&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Forfeited/expired/cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;199.71&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options outstanding at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;651,162&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;83.60&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options exercisable at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;371,782&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;61.46&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Vested and expected to vest at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;637,673&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;83.18&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5.73&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;53,173&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;text-indent:0;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:3pt;border-bottom:0.75pt solid;margin-right:83.333%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:8.333%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.635986778229898%;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Represents the number of vested options as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; adjusted for estimated forfeiture rates of &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to non-executive level employees and &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to executive level employees.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_dd314713-9966-4b77-a5f0-c870dd810fe5"
      unitRef="U_shares">609965</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="2"
      id="F_01976b85-4c34-4a14-ab99-cc55f404cb2f"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">71.74</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_ea3d1d68-2eb0-4719-bffd-6b65e2b0e4f6"
      unitRef="U_shares">66069</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_a2f79612-b7c7-4729-a177-da481e86e53f"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">173.08</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_494440b9-cdea-4f6f-bc7f-5ac64cb377a7"
      unitRef="U_shares">22872</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_1322af3e-9b8f-4308-93db-da95a6ed183d"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">15.52</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_ba42825f-444e-4c2d-81b7-864951559269"
      unitRef="U_shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_720f1f55-a919-4474-b69b-15fc303d0c3d"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">199.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_db9e946e-2612-42a1-ad01-c220e027e53a"
      unitRef="U_shares">651162</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_72dd487c-d4cd-4d2e-8999-d349310f1c2c"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">83.6</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_87919997-0a02-4e0a-8d1b-a7e8628fba0a"
      unitRef="U_shares">371782</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_80c1e2fe-c7b4-4fbd-a6d6-4e45c3b5fd15"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">61.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_4e9c865f-4ce4-44b0-bdb7-06e678ace694"
      unitRef="U_shares">637673</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_a46dc2a8-9f36-49cc-827c-8174fcf1ebd0"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">83.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_aaa0d4bc-a19b-4a85-b6c9-d369b39dcc1c">P5Y8M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-3"
      id="F_ee662a64-ac6c-4919-bbb2-8056eabf38e2"
      unitRef="U_USD">53173000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="C_fdc9d1ae-9cae-4a17-92ec-6a882b3569bd"
      decimals="2"
      id="F_bef5456e-4ca8-417b-b4cd-3991caed8b0c"
      unitRef="U_pure">0.08</rgen:PercentageOfSharesSubjectToForfeiture>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="C_41ef690f-1d2f-4809-b6d9-da38ed8a3f7b"
      decimals="2"
      id="F_0ed9852f-ec09-449e-a241-276c22f606dd"
      unitRef="U_pure">0.03</rgen:PercentageOfSharesSubjectToForfeiture>
    <us-gaap:SharePrice
      contextRef="C_c7dac913-7e20-4be0-921c-3b4999696498"
      decimals="2"
      id="F_b11d8d04-f11d-47cb-84a6-4076e7a55259"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">159.01</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-5"
      id="F_79d61934-9038-4b10-bb63-bc9df14411e3"
      unitRef="U_USD">3400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-5"
      id="F_535559df-87d2-487b-8cc3-8790ebb44e37"
      unitRef="U_USD">9800000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_784e4450-5c75-4a05-8334-4c74d8a571e0"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">85.7</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="2"
      id="F_9c1e502c-6830-442b-b8fa-72b11d68cc36"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">76.64</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_d8ebbb63-6f11-4bed-bb7f-3d10fc6e12ec">&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 under the Plans is summarized below:&lt;/span&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:65.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.121%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.129999999999999%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.601%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.59%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.601%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted Average&lt;br/&gt;Grant Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unvested at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;531,034&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;142.57&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Awarded&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;175,475&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;174.86&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;173,714&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;118.70&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Forfeited/cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;53,920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;179.53&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Unvested at September 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;478,875&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;188.41&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Vested and expected to vest at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-weight:normal;font-size:6.7pt;font-family:Times New Roman;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;411,646&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;153.79&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:6.667%;text-indent:0;display:flex;margin-top:0;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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:9pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.571084182443509%;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Represents the number of vested stock units as of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; adjusted for estimated forfeiture rates of &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to non-executive level employees and &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for awards granted to executive level employees. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="INF"
      id="F_a4fd6296-2072-4f8c-9c6e-1c8eda36c1a1"
      unitRef="U_shares">531034</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="C_b09c0f9e-5c51-456f-9957-ffb5fede2034"
      decimals="2"
      id="F_d89d4c75-38bd-47ff-b4cf-7895fd4d5bed"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">142.57</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_76bb99b6-d590-478e-a717-34c20630adfb"
      unitRef="U_shares">175475</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_324afc89-0dcf-48f4-92dd-2fcc91d077cf"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">174.86</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_90535ef5-5c66-41ee-883b-8b87b4e6a9b8"
      unitRef="U_shares">173714</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_14524553-59d3-4740-b573-4e355b050521"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">118.7</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_6a4b76e3-64d6-403d-a881-f3bfed45f425"
      unitRef="U_shares">53920</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_6e289232-82f3-43bd-8559-3a581fac7ffc"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">179.53</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_df4711b2-0359-4621-a124-a882523d84bc"
      unitRef="U_shares">478875</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_cb5543ce-8877-4920-83a2-93dddb08cada"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">188.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_f53a333c-a682-4afd-b31d-d702c78d1e53"
      unitRef="U_shares">411646</rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber>
    <rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="2"
      id="F_bb66cba6-c118-4e68-a054-0a99c491f048"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">153.79</rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="C_3724e612-61bd-430a-b202-7aa0f948df3b"
      decimals="2"
      id="F_db2b779b-d697-4920-b719-b2977b78479e"
      unitRef="U_pure">0.08</rgen:PercentageOfSharesSubjectToForfeiture>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="C_1291ff2c-3a6f-4b4b-a65a-cbd1f72f77d8"
      decimals="2"
      id="F_3a6ab5b9-b323-47cc-b3b0-8bf04ef58bd4"
      unitRef="U_pure">0.03</rgen:PercentageOfSharesSubjectToForfeiture>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="C_ab2e2224-f373-42d1-bd2d-9ccfb549c73e"
      decimals="-5"
      id="F_81fdcd2c-9e2a-43b3-8977-5c69a62ddb24"
      unitRef="U_USD">32300000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="C_9fae5b8e-0af7-4511-980c-90356dd429ea"
      decimals="-5"
      id="F_bd0485e2-8872-429a-999c-7a5ada5eee29"
      unitRef="U_USD">40400000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_ab2e2224-f373-42d1-bd2d-9ccfb549c73e"
      decimals="2"
      id="F_794926da-07f3-4adb-8b3f-07784b996b23"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">174.86</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_9fae5b8e-0af7-4511-980c-90356dd429ea"
      decimals="2"
      id="F_001e156b-38ef-41d9-8513-994cb93862cb"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">191.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="-5"
      id="F_51c3e344-516c-40f5-95e0-5528801d12e2"
      unitRef="U_USD">66000000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_34ef153d-896f-4d7d-b011-15abef98edde">P2Y10M17D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <rgen:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares
      contextRef="C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681"
      decimals="INF"
      id="F_36b626e3-935e-487e-a484-83056980a354"
      unitRef="U_shares">2156681</rgen:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="C_ddede146-e39d-42e2-811e-3d451abddc6f"
      id="F_035dbb6c-4365-4920-a34c-1b2670bbea15">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_3e4531a4-0c64-4f52-95d8-b0b5778b9969">&lt;div style="text-indent:0;display:flex;margin-top:10pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;10.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Commitments and Contingencies &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Collaboration Agreements&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company licenses certain technologies that are, or may be, incorporated into its technology under several agreements and also has entered into several clinical research agreements that require the Company to fund certain research projects. Generally, the license agreements require the Company to pay annual maintenance fees and royalties on product sales once a product has been established using the technologies. Research and development expenses associated with license agreements were immaterial amounts for the three and nine months ended September 30, 2023 and 2022.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In June 2018, the Company secured an agreement with Navigo Proteins GmbH (&#x201c;Navigo&#x201d;) for the exclusive co-development of multiple affinity ligands for which the Company holds commercialization rights. The Company is manufacturing and supplying the first of these ligands, NGL-Impact&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, exclusively to Purolite Life Sciences, an Ecolab Inc. company (&#x201c;Purolite&#x201d;), who is pairing the Company&#x2019;s high-performance ligand with Purolite&#x2019;s agarose jetting base bead technology used in their Jetted A50 Protein A resin product. The Company also signed a long-term supply agreement with Purolite for NGL-Impact and other potential additional affinity ligands that may advance from the Company&#x2019;s Navigo collaboration. In September 2020, the Company and Navigo successfully completed co-development of an affinity ligand targeting the SARS-CoV-2 spike protein, to be utilized in the purification of vaccines for the COVID-19 pandemic, including emerging variants of the SARS-CoV-2 coronavirus. The Company has proceeded with scaling up and manufacturing this ligand and the development and validation of the related affinity chromatography resin, which is marketed by the Company. In September 2021, the Company and Navigo successfully completed co-development of a novel affinity ligand that addresses aggregation issues associated with pH sensitive antibodies and Fc-fusion proteins. The Company is manufacturing and supplying this ligand, NGL-Impact&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; HipH, to Purolite. The Navigo and Purolite agreements are supportive of the Company&#x2019;s strategy to secure and reinforce the Company&#x2019;s proteins business. The Company made royalty payments to Navigo of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three months ended&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, and payments of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 and 2022, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Legal Proceedings&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;From time to time, in the normal course of its operations, the Company is subject to litigation matters and claims relating to employee relations, business practices and patent infringement. Litigation can be expensive and disruptive to normal business operations. Moreover, the results of complex legal proceedings are difficult to predict, and the Company's view of these matters may change in the future as the litigation and events related thereto unfold. The Company expenses legal fees as incurred. The Company records a provision for contingent losses when it is both probably that a liability has been incurred and the amount of the loss can be reasonably estimated. An unfavorable outcome to any legal matter, if material, could have an adverse effect on the Company's operations or its financial results.&lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:RoyaltyExpense
      contextRef="C_03f1dedf-5b09-4e09-9c8e-1f6615c13430"
      decimals="-5"
      id="F_d40d0c04-c4e4-4277-96e0-ef8b25e5ad2e"
      unitRef="U_USD">800000</us-gaap:RoyaltyExpense>
    <us-gaap:RoyaltyExpense
      contextRef="C_cda1fc68-dcf5-4d3d-b5f4-901572acd667"
      decimals="-5"
      id="F_05bae7dc-97c8-474a-b0e1-d52303c05481"
      unitRef="U_USD">400000</us-gaap:RoyaltyExpense>
    <us-gaap:RoyaltyExpense
      contextRef="C_26cc2f4e-5b40-4e20-aa2d-001c3d824799"
      decimals="-5"
      id="F_c1fb0d4c-dc90-4c64-b9b1-d222d42a2bc2"
      unitRef="U_USD">3100000</us-gaap:RoyaltyExpense>
    <us-gaap:RoyaltyExpense
      contextRef="C_823f0961-1e36-4654-ac48-d7ad7ec1e6cb"
      decimals="-5"
      id="F_f4ec7edb-0782-426f-8850-2a57f4ea1e20"
      unitRef="U_USD">1500000</us-gaap:RoyaltyExpense>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_e537f1b1-f1bc-4269-a4a1-14119a95d26c">&lt;div style="text-indent:0;display:flex;margin-top:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;11.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;For the three and nine months ended September 30, 2023, the Company recorded an income tax benefit of $&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and an income tax provision of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. The Company&#x2019;s effective tax rate for the three and nine months ended September 30, 2023 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;56.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%)&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, compared to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;14.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;17.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% for the corresponding periods in the prior year.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;On August 16, 2022, the United States enacted the Inflation Reduction Act of 2022 ("Inflation Reduction Act"), which, among other things, implements a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% alternative minimum tax on global adjusted financial statement income of certain large corporations, a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% excise tax on net stock repurchases and several tax incentives to promote clean energy and was effective beginning in 2023. We evaluated the provisions of the Inflation Reduction Act and no provision had a material effect on our consolidated financial position or results of operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-5"
      id="F_2fdb5969-82ec-4068-b63a-e06023f12d89"
      unitRef="U_USD">-6500000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-5"
      id="F_f1bd9cf4-fe80-4455-a91c-2ba228442992"
      unitRef="U_USD">5800000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="3"
      id="F_8de19e83-bc4a-40b1-81c7-f93c0d66a281"
      unitRef="U_pure">-0.562</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="3"
      id="F_aa478725-648e-4913-9051-816fc87f4c75"
      unitRef="U_pure">0.08</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="3"
      id="F_4058de29-69ca-4389-898b-5be66dd59a25"
      unitRef="U_pure">0.149</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="3"
      id="F_3f44e8ef-7a64-46ce-be9c-4f573e40795d"
      unitRef="U_pure">0.174</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <rgen:PercentageOfCurrentFederalTaxExpenseBenefit
      contextRef="C_fc69ac89-a7ff-422d-9cf6-d80cd05875e6"
      decimals="2"
      id="F_d0675df3-087f-4f49-90f7-99c6bfdfcb30"
      unitRef="U_pure">0.15</rgen:PercentageOfCurrentFederalTaxExpenseBenefit>
    <rgen:PercentOfExciseTaxOnNetStockRepurchases
      contextRef="C_fc69ac89-a7ff-422d-9cf6-d80cd05875e6"
      decimals="2"
      id="F_0e36dc14-1dd1-4a5f-8668-6233e11d49a1"
      unitRef="U_pure">0.01</rgen:PercentOfExciseTaxOnNetStockRepurchases>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_8f98b845-de0d-4465-b551-5e85959b0661">&lt;div style="text-indent:0;display:flex;margin-top:0;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;12.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnings Per Share&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:12pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A reconciliation of basic and diluted weighted average shares outstanding is as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:45.72%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.24%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.24%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.14%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.24%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands, except per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Numerator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;18,172&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;40,405&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;67,065&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;137,230&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Charges associated with convertible debt instruments, net of tax&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;387&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Numerator for diluted earnings per share &#x2013; net income available to common stockholders after the effect of dilutive securities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;18,172&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;40,405&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;67,065&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;137,617&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Denominator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted average shares used in computing net income per share &#x2013; basic&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,766&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,498&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,688&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,432&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Effect of dilutive shares:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options and stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;439&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;673&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;469&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;663&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Convertible Senior Notes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;735&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;776&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,501&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Dilutive effect of unvested performance stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:15pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Dilutive potential common shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,174&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,806&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,245&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,166&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Denominator for diluted earnings per share &#x2013; adjusted weighted average shares used in computing net income per share &#x2013; diluted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;56,940&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;57,304&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;56,933&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;57,598&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnings per share:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Basic&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.73&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.20&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2.48&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Diluted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.32&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.71&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.18&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2.39&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;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: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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;For the three and nine months ended September 30, 2023, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;301,404&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;328,179&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares, respectively, of the Company&#x2019;s common stock were excluded from the calculation of diluted EPS because the exercise prices of the stock options were greater than or equal to the average price of the common shares and were therefore anti-dilutive. Comparatively, for the three and nine months ended September 30, 2022, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;112,179&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;149,187&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares, respectively, were considered anti-dilutive.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In July 2019, the Company issued $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;287.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million aggregate principal amount of the 2019 Notes. As provided by the terms of the indenture underlying the 2019 Notes, prior to March 4, 2022, conversion of the 2019 Notes could have been settled in cash, shares of the Company&#x2019;s common stock or a combination thereof, at the Company&#x2019;s election. On March 4, 2022, we entered into the Second Supplemental Indenture for the 2019 Notes, which irrevocably elected to settle the conversion of the 2019 Notes using a combination of cash and shares of the Company&#x2019;s common stock, settling the par value of the 2019 Notes in cash and any excess conversion premium in shares.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As provided by the terms of the Second Supplemental Indenture underlying the 2019 Notes, the Company irrevocably elected to settle the conversion obligation for the 2019 Notes in a combination of cash and shares of the Company's common stock. This means the Company will settle the par value of the 2019 Notes in cash and any excess conversion premium in shares. The Company adopted ASU 2020-06 effective January 1, 2022. Under ASU 2020-06, the Company is required to reflect the dilutive effect of the convertible securities by application of the "if-converted" method, which means the denominator of the EPS calculation would include the total number of shares assuming the 2019 Notes had been fully converted at the beginning of the period. Prior to March 4, 2022, the Company had the choice to settle the conversion of the 2019 Notes in cash, stock or a combination of the two. Therefore, from January 1, 2022 (the date the Company adopted ASU 2020-06) to March 4, 2022, the Company included &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3,474,429&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares in the denominator of the EPS calculation, applying the if converted method. Subsequent to March 4, 2022, after the Second Supplemental Indenture became effective, the Company irrevocably elected to settle the conversion obligation for the 2019 Notes in a combination of cash and shares of the Company's common stock, and from March 5, 2022 forward, only the excess premium will be settled with shares. Under the if-converted method of calculating dilutive shares, the Company was also required to exclude amortization of debt issuance costs and interest charges applicable to the convertible debt from the numerator of the dilutive EPS calculation for the period from January 1, 2022 to March 4, 2022, as if the interest on convertible debt was never recognized for that period. For the three months ended March 31, 2022, the Company excluded interest charges of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (net of tax) from the numerator.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Prior to the adoption of ASU 2020-06, the Company applied the provisions of ASC 260, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Earnings Per Share,&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; Subsection 10-45-44, to determine the diluted weighted average shares outstanding as it related to the conversion spread on its convertible notes. Accordingly, the par value of the 2019 Notes was not included in the calculation of diluted income per share, but the dilutive effect of the conversion premium was considered in the calculation of diluted net income per share using the treasury stock method. The dilutive impact of the 2019 Notes was based on the difference between the Company&#x2019;s current period average stock price and the conversion price of the 2019 Notes, provided there was a premium. Pursuant to this accounting standard, there was no dilution from the accreted principal of the 2019 Notes. For the three and nine months ended September 30, 2023, the dilutive effect of the conversion premium included in the calculation of diluted earnings was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;735,150&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;776,339&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares, respectively. For the three and nine months ended September 30, 2022, the dilutive effect of the conversion premium included in the calculation of diluted earnings was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,130,530&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,500,717&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_06b40d56-4e3e-47ce-a6a0-f99bcb506dec">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A reconciliation of basic and diluted weighted average shares outstanding is as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:45.72%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.24%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:11.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.24%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.14%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.24%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;br/&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;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-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;(Amounts in thousands, except per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Numerator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Net income&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;18,172&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;40,405&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;67,065&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;137,230&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Charges associated with convertible debt instruments, net of tax&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;387&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Numerator for diluted earnings per share &#x2013; net income available to common stockholders after the effect of dilutive securities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;18,172&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;40,405&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;67,065&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;137,617&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Denominator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Weighted average shares used in computing net income per share &#x2013; basic&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,766&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,498&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,688&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;55,432&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Effect of dilutive shares:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Options and stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;439&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;673&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;469&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;663&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Convertible Senior Notes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;735&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;776&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,501&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Dilutive effect of unvested performance stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:15pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:15pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Dilutive potential common shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,174&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,806&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1,245&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2,166&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Denominator for diluted earnings per share &#x2013; adjusted weighted average shares used in computing net income per share &#x2013; diluted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;56,940&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;57,304&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;56,933&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;57,598&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Earnings per share:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Basic&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.73&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.20&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2.48&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:5pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:5pt;text-indent:0;font-size:9pt;margin-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:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Diluted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.32&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.71&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.18&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;2.39&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;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: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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_0d4cde8d-41c3-4ddf-bf81-8d87ad4b56fa"
      unitRef="U_USD">18172000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_e70e4177-6b13-4a58-8c63-dbf2cb8b31af"
      unitRef="U_USD">40405000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_f3b3f6cf-1b3b-4c66-a563-b8db824f0d17"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_dc7786a4-b1f2-4cab-ba7f-9a5f1b912b0b"
      unitRef="U_USD">137230000</us-gaap:NetIncomeLoss>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_be96f0e2-f479-4b6a-a0fc-7b4a17dec8d0"
      unitRef="U_USD">0</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_8a43c7b1-ec44-4da6-9b64-747dab01f7b4"
      unitRef="U_USD">0</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_539e85a9-86d9-4903-b43b-fbc5e110939d"
      unitRef="U_USD">0</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_ac1a8847-067f-4542-85ea-9d303412daab"
      unitRef="U_USD">387000</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="-3"
      id="F_d1eeeba7-19f9-4f92-8c6d-fd5b9385a7af"
      unitRef="U_USD">18172000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="-3"
      id="F_1b345f04-6055-4cea-9d82-8a7ad136d8de"
      unitRef="U_USD">40405000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="-3"
      id="F_5e13343b-e160-40a0-98b9-7506715e7cd6"
      unitRef="U_USD">67065000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="-3"
      id="F_c9fe29bf-601d-474e-af2a-41b3c0bed53c"
      unitRef="U_USD">137617000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <rgen:NumberOfSharesBasicOutstanding
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_8369cf9e-9a9e-43b2-9a9c-46cd5cbfdad8"
      unitRef="U_shares">55766</rgen:NumberOfSharesBasicOutstanding>
    <rgen:NumberOfSharesBasicOutstanding
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_fdf864c9-70fc-4cbd-acf0-4c3958e7ef3f"
      unitRef="U_shares">55498</rgen:NumberOfSharesBasicOutstanding>
    <rgen:NumberOfSharesBasicOutstanding
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_676e0ad3-bdaa-4639-931f-fc6597048f73"
      unitRef="U_shares">55688</rgen:NumberOfSharesBasicOutstanding>
    <rgen:NumberOfSharesBasicOutstanding
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_45d8229e-a48c-43d5-b44e-e40ab0009683"
      unitRef="U_shares">55432</rgen:NumberOfSharesBasicOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_d19eb3d2-32f1-4ded-ba5c-3c38994ca274"
      unitRef="U_shares">439</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_d3202e7e-a2f7-4534-b97b-d5f8c6c774ca"
      unitRef="U_shares">673</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_9662e937-e91e-4281-a3b7-4dbde23bb241"
      unitRef="U_shares">469</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_28670b10-5843-49d9-8ed7-7dd71db7877a"
      unitRef="U_shares">663</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_1af8ad36-71eb-48dc-b4aa-52a59a247448"
      unitRef="U_shares">735</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_3036d968-3bac-430a-884e-09a1425bae8a"
      unitRef="U_shares">1131</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_e1375817-02b4-41eb-98fd-601018884935"
      unitRef="U_shares">776</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_cac848ce-4357-43a9-9428-706f119f967e"
      unitRef="U_shares">1501</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_fb051dca-69c3-40ab-867a-f5153fd87d66"
      unitRef="U_shares">0</rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits>
    <rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_ae59f6de-8744-4eb3-b561-a73491c06f74"
      unitRef="U_shares">2</rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits>
    <rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_d20d107d-4008-4b30-8ba5-539e37c8dd11"
      unitRef="U_shares">0</rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits>
    <rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_e8701f7e-e445-45d2-bd4f-d27f43c111b1"
      unitRef="U_shares">2</rgen:WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_b496aebb-1a5f-479a-9f52-88e235b87d76"
      unitRef="U_shares">1174</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_ec7dc828-5989-437d-845c-219362641385"
      unitRef="U_shares">1806</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_0e6f68ec-aefc-4fad-93b1-d7f55ffb833c"
      unitRef="U_shares">1245</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_d0ef776b-34c8-4518-b82d-8ed46ced44b5"
      unitRef="U_shares">2166</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="0"
      id="F_03263cf1-8da3-4dee-aed4-be832402a467"
      unitRef="U_shares">56940</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="0"
      id="F_cf682d2b-51af-4469-8f99-3fadf776b09b"
      unitRef="U_shares">57304</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_e5e9c80c-a886-4536-b2f7-9eeafdd50f6e"
      unitRef="U_shares">56933</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="0"
      id="F_69be1929-52ef-44e0-98a4-4365ce2b64f0"
      unitRef="U_shares">57598</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="2"
      id="F_b12540f2-fe5d-4b0d-b30c-ffb5585f195f"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.33</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="2"
      id="F_caf8cb38-b597-4094-bd43-453d9fc6448b"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.73</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_7a393e57-2f89-4fba-af37-80922ba0aa6c"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.2</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="2"
      id="F_701e4e62-1af2-4a37-a2cb-6865b4336d83"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">2.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="2"
      id="F_f488da97-5fb9-48a7-981d-8e299a5d899b"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.32</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="2"
      id="F_bb8a04f7-a743-4997-a33d-29d1261e96b2"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.71</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_041017e0-4348-4075-85b2-9889d7a5a9a4"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">1.18</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="2"
      id="F_548f5708-51af-47d9-bc24-d1a23e4f671e"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">2.39</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="INF"
      id="F_d78bf37e-18e4-4bfa-8c0a-4c8f3b83f082"
      unitRef="U_shares">301404</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_d4dd2dc1-b856-4d29-8f13-d343dee1c1d4"
      unitRef="U_shares">328179</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="INF"
      id="F_7cee2571-e645-4ec9-a049-4d8f4e9985e2"
      unitRef="U_shares">112179</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="INF"
      id="F_eb40ed2a-9456-4bbf-8664-400f329cbb70"
      unitRef="U_shares">149187</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="C_efc02b50-9525-4ec9-b3eb-ef2a3b59eac5"
      decimals="-5"
      id="F_24cde739-04e6-415f-aa05-49568953e315"
      unitRef="U_USD">287500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_cd91b63d-890b-47e9-9ad5-3ac68b67252f"
      decimals="INF"
      id="F_3766d67f-2502-4650-9daf-0b42e83202ca"
      unitRef="U_shares">3474429</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="C_0e18670b-fdd8-4e65-a456-fbee7920c0b9"
      decimals="-5"
      id="F_5b49c09e-76e9-4880-93d9-64bae2293555"
      unitRef="U_USD">400000</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <rgen:DilutiveEffectOnSharesOfConversionPremium
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="INF"
      id="F_117a016d-2e7a-4a5d-9815-f67fafd89bc1"
      unitRef="U_shares">735150</rgen:DilutiveEffectOnSharesOfConversionPremium>
    <rgen:DilutiveEffectOnSharesOfConversionPremium
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="INF"
      id="F_9cf90927-eb6f-4139-a1e6-af4a421746b7"
      unitRef="U_shares">776339</rgen:DilutiveEffectOnSharesOfConversionPremium>
    <rgen:DilutiveEffectOnSharesOfConversionPremium
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="INF"
      id="F_d91f3b52-f874-429c-96d1-0f37cfeeae0c"
      unitRef="U_shares">1130530</rgen:DilutiveEffectOnSharesOfConversionPremium>
    <rgen:DilutiveEffectOnSharesOfConversionPremium
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="INF"
      id="F_d0fa533e-42d9-46bd-8107-cc9409d36c75"
      unitRef="U_shares">1500717</rgen:DilutiveEffectOnSharesOfConversionPremium>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_f4829596-2c7d-4cf0-a012-87e24a057db4">&lt;div style="text-indent:0;display:flex;margin-top:12pt;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-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;13.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Related Party Transactions&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Certain facilities leased by our subsidiary, Spectrum LifeSciences LLC ("Spectrum") are owned by the Roy T. Eddleman Living Trust (the "Trust"). As of September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, the Trust owned greater than &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of the Company&#x2019;s outstanding shares. Therefore, the Company considers the Trust to be a related party. The lease amounts paid to the Trust prior to the public offering were negotiated in connection with the acquisition of Spectrum. The Company incurred rent expense totaling $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million respectively for each of the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three months ended September 30, 2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; related to these leases and incurred rent expense of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for each of the &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;nine months ended September 30, 2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/p&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners
      contextRef="C_3b07fa83-c650-4d0d-b745-c9e66a7af009"
      decimals="INF"
      id="F_1042bcb7-c07d-412a-b3b8-1bdf75267107"
      unitRef="U_pure">0.05</us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners>
    <us-gaap:PaymentsForRent
      contextRef="C_b74f3545-bb1d-46da-b557-40afee4df3f5"
      decimals="-5"
      id="F_6ae368e8-3e12-4090-bba5-5b121db61bdb"
      unitRef="U_USD">100000</us-gaap:PaymentsForRent>
    <us-gaap:PaymentsForRent
      contextRef="C_639cc313-9a7c-4dc1-b645-6a131f543337"
      decimals="-5"
      id="F_96b32cad-05dc-4431-a241-252c9259befc"
      unitRef="U_USD">200000</us-gaap:PaymentsForRent>
    <us-gaap:PaymentsForRent
      contextRef="C_0ed23a08-558e-4162-aad8-2f48177e907a"
      decimals="-5"
      id="F_9e391d38-18db-4d96-a00f-5736d594f33c"
      unitRef="U_USD">500000</us-gaap:PaymentsForRent>
    <us-gaap:PaymentsForRent
      contextRef="C_809c4263-b3f1-466a-91ad-d90a49cd1f3b"
      decimals="-5"
      id="F_6e8864cb-6bc3-4e87-b619-5fa6b71b5730"
      unitRef="U_USD">500000</us-gaap:PaymentsForRent>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_bbb898e7-30a9-4680-b64d-759477b8d67a">&lt;div style="text-indent:0;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;14.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Segment Reporting &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating segments are components of an enterprise that engage in business activities for which discrete financial information is available and regularly reviewed by the chief operating decision maker ("CODM") in deciding how to allocate resources and assess performance. Our Chief Executive Officer ("CEO") has been identified as the CODM.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company views its operations, makes decisions regarding how to allocate resources and manages its business as &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; operating segment and one reportable segment. Our CODM evaluates financial information on a consolidated basis. As a result, the required financial segment information can be found in the consolidated condensed financial statements of the Company disclosed herein.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:12pt;font-family:Times New Roman;"&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table represents the Company&#x2019;s total revenue by geographic area (based on the location of the customer):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:60%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:6.068%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.676%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.175%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:5.082000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.676%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:6.309%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue by customers' geographic locations:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;North America&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Europe&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;36&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;38&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;APAC/Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;17&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;23&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;20&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;20&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;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="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Concentrations of Credit Risk and Significant Customers&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Financial instruments that subject the Company to significant concentrations of credit risk primarily consist of cash and cash equivalents, marketable securities and accounts receivable. Per the Company&#x2019;s investment policy, cash equivalents and marketable securities are invested in financial instruments with high credit ratings and credit exposure to any one issue, issuer (with the exception of U.S. Treasury obligations) and type of instrument is limited. At September 30, 2023 and December 31, 2022, the Company had no investments associated with foreign exchange contracts, options contracts or other foreign hedging arrangements.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Concentration of credit risk with respect to accounts receivable is limited to customers to whom the Company makes significant sales. While a reserve for the potential write-off of accounts receivable is maintained, the Company has not written off any significant accounts to date. To control credit risk, the Company performs regular credit evaluations of its customers&#x2019; financial condition.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;There was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; revenue from customers that represented &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% or more of the Company's total revenue for the three and nine months ended September 30, 2023 and 2022.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;   &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;No accounts receivable balance from a specific customer represented &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% or more of the Company's total trade accounts receivable at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. Significant accounts receivable balances representing &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% or more of the Company's accounts receivable and royalties at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; came from our accounts receivable balance outstanding with Purolite, an Ecolab Inc. company, which was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;12.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of our total trade accounts receivable balance.&lt;/span&gt;&lt;/p&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="0"
      id="F_79f53e64-5d7e-444e-80a3-e5b7c855fcd3"
      unitRef="U_Segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_2db2d1ac-42a2-4616-b399-d492779ed9c8">&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table represents the Company&#x2019;s total revenue by geographic area (based on the location of the customer):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:60%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:6.068%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.676%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:7.175%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.006%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:5.082000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:2.676%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:6.309%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Arial;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Three Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nine Months Ended&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;September 30,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:8pt;"&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;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-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="text-indent:0;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue by customers' geographic locations:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;North America&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;42&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Europe&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;36&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;38&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#ffffff;text-indent:10pt;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;APAC/Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;17&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;23&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;20&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;20&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#ffffff;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:10pt;"&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Total revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="background-color:#cff0fc;word-break:break-word;white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="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;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_d9b1dcb1-9927-4eb9-b054-87234e8e2ba3"
      decimals="2"
      id="F_e924163e-3adf-4184-8892-108b43edabac"
      unitRef="U_pure">0.49</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_f23a5451-71e9-4709-892a-2715747cf854"
      decimals="2"
      id="F_48cdb6b0-ea21-4a9f-80eb-a2506cc95479"
      unitRef="U_pure">0.42</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_78bc408c-ba59-4d1a-a9be-933157c80135"
      decimals="2"
      id="F_93f6fd4d-278b-4860-b9fb-89f3f4c6d543"
      unitRef="U_pure">0.44</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_00add57c-f99c-46ef-8537-6bd7a775258b"
      decimals="2"
      id="F_f3849ea3-1d1e-4910-9f42-e5bf34ddbbb1"
      unitRef="U_pure">0.42</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_921bbbf7-e99d-47d0-a160-678bbbdb19f8"
      decimals="2"
      id="F_3d9df067-062b-4888-a787-93166d3bf2aa"
      unitRef="U_pure">0.34</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_42ec1346-b9a4-4918-9f08-2f61dd8e7f7f"
      decimals="2"
      id="F_755ed975-b4c8-4c85-824a-e5c704052560"
      unitRef="U_pure">0.35</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_2a837317-8e58-45b6-b3da-840fb7cb9c0a"
      decimals="2"
      id="F_d4fd05b6-90d0-4cc8-92ac-c27edb2db53c"
      unitRef="U_pure">0.36</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0008747b-7daf-4d3f-b5d3-4dbf779713e9"
      decimals="2"
      id="F_a92d5a55-2616-4bdc-a434-bff3b609fb9d"
      unitRef="U_pure">0.38</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_b8ef5c7e-f8c6-4f5d-a4c9-5f1b67b8a6b3"
      decimals="2"
      id="F_37867a86-482b-4d9e-bf12-053246019230"
      unitRef="U_pure">0.17</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_5dbe09cf-f7d1-4d59-a8c0-ff73f2f6afc8"
      decimals="2"
      id="F_e66c6ac8-5174-4720-8518-e8a0c5664a3c"
      unitRef="U_pure">0.23</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_2668adfd-7544-470d-92f5-c9a9606b8fca"
      decimals="2"
      id="F_a67be4f9-7e8d-47d7-96d9-f77da9929b13"
      unitRef="U_pure">0.20</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_8cf25956-fc00-4b82-8e1d-4eea0e5db938"
      decimals="2"
      id="F_03112d61-829a-4174-abb7-b785c5f0118d"
      unitRef="U_pure">0.20</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36"
      decimals="2"
      id="F_903dc3a2-153e-43ba-bf89-f7be98921a3a"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_bcca7dae-3e07-40d3-8938-2c1ab33a69cc"
      decimals="2"
      id="F_7f950296-5943-4849-9543-22f6184f2594"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      decimals="2"
      id="F_27ad56ec-db60-43b5-bba3-d32bbe6ca595"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_def6e96a-f4a7-4cc1-bb7c-0f205522df6d"
      decimals="2"
      id="F_4607c242-d05f-46b8-8e19-44d2dd999b5c"
      unitRef="U_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_f859f923-a1d6-484b-a120-fbb36fa356cd"
      decimals="-3"
      id="F_c456b181-173a-4c8f-bed3-9c7c84c59f0d"
      unitRef="U_USD">0</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_3d5ddb9e-aa00-4182-b58c-09394221355b"
      decimals="-3"
      id="F_368e7a43-d105-4d5a-9266-6ed8b317d268"
      unitRef="U_USD">0</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_27bc5ff3-df20-4dd1-939c-d3e0c6c7b5c0"
      decimals="-3"
      id="F_21852063-6c1a-4f33-99c8-499ef7e5232f"
      unitRef="U_USD">0</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="C_1cdbcd11-292d-4c07-b976-f886f65abbcc"
      decimals="-3"
      id="F_03aaa645-c2d2-4086-bdba-14f21d2c50a3"
      unitRef="U_USD">0</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_c4545892-7ce6-4242-a05b-e23c3cc4a419"
      decimals="2"
      id="F_08a7a020-fc09-4d59-95f5-909b0b882a16"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_e7591784-590d-4139-89d4-0d5eeed2eceb"
      decimals="2"
      id="F_248bd732-911e-4955-8302-7d3d4f036898"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_ffb0abda-eca1-46cd-b1b8-8ae39258300c"
      decimals="2"
      id="F_271f8964-6fbd-49be-a292-a6736439b1b3"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_cd4e55d8-a771-4a3f-a1d7-8ea1523e5ffa"
      decimals="2"
      id="F_73b2eded-ae08-42b4-a101-3f466f886eda"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0364194f-9ad2-4f36-8666-7a7194eed471"
      decimals="2"
      id="F_ab527a43-2563-4fed-b21d-23a7914350d7"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_db66190a-5326-4a07-b1a9-31b2a75509cc"
      decimals="2"
      id="F_c56cb6b1-f61c-40f1-847c-020ec95461a0"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_e2162459-d2f2-4f1d-82c5-8e7e4f62d09a"
      decimals="3"
      id="F_3fed5857-d84b-46b7-8203-7b27c6b10f6a"
      unitRef="U_pure">0.127</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_abbc99bb-674c-4cde-9869-3bc5c9875a77"
      decimals="3"
      id="F_64541903-b27c-4f60-a143-6025c37aa014"
      unitRef="U_pure">0.127</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_c6f2c5b7-aac0-4031-8215-30c9d28116c8">&lt;div style="text-indent:0;display:flex;margin-top:12pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;text-indent:0;display:inline-flex;font-size:10pt;font-family:Times New Roman;justify-content:flex-start;min-width:3.333%;"&gt;15.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Subsequent Event&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:3.333%;text-indent:0;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-style:italic;min-width:fit-content;"&gt;Acquisition of Metenova Holding AB&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;text-indent:0;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:normal;font-size:10pt;font-family:Times New Roman;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;October 2, 2023&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, Repligen Sweden AB, a subsidiary of the Company completed its acquisition of all of the outstanding equity interests in Metenova Holding AB ("Metenova"), pursuant to a Share Sale and Purchase Agreement with, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;inter alia, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Metenova for approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;173&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million in cash and the Company's equity. Metenova will further strengthen our fluid management portfolio with its magnetic mixing and drive train technologies that are widely used by global biopharmaceutical companies and contract development and manufacturing organizations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:3.333%;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The Company will account for the acquisition of Metenova as a purchase of business under the acquisition method of accounting and has engaged a third-party valuation firm to assist with the valuation of the business acquired. The estimated purchase price allocation for the acquisition of Metenova will be included in the Annual Report on Form 10-K for the year ended December 31, 2023.&lt;/span&gt;&lt;/p&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1
      contextRef="C_145e26ad-9866-4d83-985a-d837ec5e86ae"
      id="F_6867c792-0a64-4141-89e4-e020bee1485f">2023-10-02</us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1>
    <us-gaap:CashAcquiredFromAcquisition
      contextRef="C_145e26ad-9866-4d83-985a-d837ec5e86ae"
      decimals="-6"
      id="F_5ef3521a-3756-4787-b1a8-3c7d5da9e439"
      unitRef="U_USD">173000000</us-gaap:CashAcquiredFromAcquisition>
    <ecd:MtrlTermsOfTrdArrTextBlock
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_ae466b99-36ac-4867-8a5e-42dea3c35feb">&lt;p style="margin-left:3.333%;text-indent:0;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-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; of the Company's directors or officers (as defined in Rule 16a-1(f) of the Securities Exchange Act of 1934) adopted, modified, or terminated a Rule 10(b)5-1 trading arrangement during the Company's fiscal quarter ended September 30, 2023.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</ecd:MtrlTermsOfTrdArrTextBlock>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_38f1b586-8268-4c99-8aa5-0f1e0365a575">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag
      contextRef="C_bb38bd4d-b50c-4bec-95d8-63e414e35a67"
      id="F_b44ee00c-7dd5-4fe9-9a10-5f4e5e924ddf">false</ecd:Rule10b51ArrTrmntdFlag>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#F_6892dd40-47a6-42c4-a9da-672b7719b188"
          xlink:label="F_6892dd40-47a6-42c4-a9da-672b7719b188"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_8b72cdc6-4dca-4073-8b42-47da22b1eac5"
          xlink:label="F_8b72cdc6-4dca-4073-8b42-47da22b1eac5"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_972e11a2-fadc-437a-a974-6a13b46b24ad"
          xlink:label="F_972e11a2-fadc-437a-a974-6a13b46b24ad"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_f4b9f1f4-6463-42af-8f85-8310738a3324"
          xlink:label="F_f4b9f1f4-6463-42af-8f85-8310738a3324"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_21f2f23d-20fc-42b1-a0d5-3b61740237a0"
          xlink:label="F_21f2f23d-20fc-42b1-a0d5-3b61740237a0"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_abe5078a-881f-4ca4-a518-a807a1b99f5d"
          xlink:label="F_abe5078a-881f-4ca4-a518-a807a1b99f5d"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_414f0b7d-95e6-4bab-ab09-c9ccc654cd04"
          xlink:label="F_414f0b7d-95e6-4bab-ab09-c9ccc654cd04"
          xlink:type="locator"/>
        <link:footnote id="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e" xlink:label="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e" 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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Unobservable inputs were weighted by the relative fair value of the contingent consideration liability.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_6892dd40-47a6-42c4-a9da-672b7719b188"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_8b72cdc6-4dca-4073-8b42-47da22b1eac5"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_972e11a2-fadc-437a-a974-6a13b46b24ad"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_f4b9f1f4-6463-42af-8f85-8310738a3324"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_21f2f23d-20fc-42b1-a0d5-3b61740237a0"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_abe5078a-881f-4ca4-a518-a807a1b99f5d"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_414f0b7d-95e6-4bab-ab09-c9ccc654cd04"
          xlink:to="FNT_756ae9e7-5931-4a93-9570-bc1347b8cf3e"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_aaa0d4bc-a19b-4a85-b6c9-d369b39dcc1c"
          xlink:label="F_aaa0d4bc-a19b-4a85-b6c9-d369b39dcc1c"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_ee662a64-ac6c-4919-bbb2-8056eabf38e2"
          xlink:label="F_ee662a64-ac6c-4919-bbb2-8056eabf38e2"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_4e9c865f-4ce4-44b0-bdb7-06e678ace694"
          xlink:label="F_4e9c865f-4ce4-44b0-bdb7-06e678ace694"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_a46dc2a8-9f36-49cc-827c-8174fcf1ebd0"
          xlink:label="F_a46dc2a8-9f36-49cc-827c-8174fcf1ebd0"
          xlink:type="locator"/>
        <link:footnote id="FNT_7178268a-013b-40cf-b4cd-19d1043e506d" xlink:label="FNT_7178268a-013b-40cf-b4cd-19d1043e506d" 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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested options as of </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested options expected to vest as of September 30, 2023 based on the unvested outstanding options at September 30, 2023</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_aaa0d4bc-a19b-4a85-b6c9-d369b39dcc1c"
          xlink:to="FNT_7178268a-013b-40cf-b4cd-19d1043e506d"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_ee662a64-ac6c-4919-bbb2-8056eabf38e2"
          xlink:to="FNT_7178268a-013b-40cf-b4cd-19d1043e506d"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_4e9c865f-4ce4-44b0-bdb7-06e678ace694"
          xlink:to="FNT_7178268a-013b-40cf-b4cd-19d1043e506d"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_a46dc2a8-9f36-49cc-827c-8174fcf1ebd0"
          xlink:to="FNT_7178268a-013b-40cf-b4cd-19d1043e506d"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_f53a333c-a682-4afd-b31d-d702c78d1e53"
          xlink:label="F_f53a333c-a682-4afd-b31d-d702c78d1e53"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_bb66cba6-c118-4e68-a054-0a99c491f048"
          xlink:label="F_bb66cba6-c118-4e68-a054-0a99c491f048"
          xlink:type="locator"/>
        <link:footnote id="FNT_f64d3bfc-587c-4f24-8797-c9208aa8da44" xlink:label="FNT_f64d3bfc-587c-4f24-8797-c9208aa8da44" 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-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents the number of vested stock units as of </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">September 30, 2023 plus the number of unvested stock units expected to vest as of September 30, 2023 based on the unvested outstanding stock units at September 30, 2023</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> adjusted for estimated forfeiture rates of </xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">8</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to non-executive level employees and </xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">3</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-weight:normal;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% for awards granted to executive level employees. </xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_f53a333c-a682-4afd-b31d-d702c78d1e53"
          xlink:to="FNT_f64d3bfc-587c-4f24-8797-c9208aa8da44"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_bb66cba6-c118-4e68-a054-0a99c491f048"
          xlink:to="FNT_f64d3bfc-587c-4f24-8797-c9208aa8da44"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>85
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    (  2"7U<'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    "  $@E]7=;M/1>\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9)1
M2\,P$,>_BN2]O:15P=#E9<,G!<&!XEM(;EM8DX;DI-VWMZU;A^@'\#%W__SN
M=W"-B=)T"5]2%S&1PWPS^#9D:>**'8BB!,CF@%[G<DR$L;GKDM<T/M,>HC9'
MO4>H.+\'CZ2M)@T3L(@+D:G&&FD2:NK2&6_-@H^?J9UAU@"VZ#%0!E$*8&J:
M&$]#V\ 5,,$(D\_?!;0+<:[^B9T[P,[)(;LEU?=]V==S;MQ!P/OST^N\;N%"
M)AT,CK^RDW2*N&*7R6_U>K-]9*KB55T(7M1B6W$I[N3MP\?D^L/O*NP[ZW;N
M'QM?!%4#O^Y"?0%02P,$%     @ !()?5YE<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
M"  $@E]7K5B5/,H%  #4'@  &    'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;+69?6_J-A3&OXK%I&F32HD=7MJ[%HG2=JO6%RYTN[J;]H=)#$0WB9GCE/+M
M=QQ"PKUR#BRZJ=0V;^>)?[:/_3B^VDCU)5D)H<E[%,;)=6NE]?I#IY-X*Q'Q
MY%RN10QW%E)%7,.I6G:2M1+<SX*BL,,<I]^)>!"WAE?9M8D:7LE4AT$L)HHD
M:11QM;T1H=Q<MVAK?V$:+%?:7.@,K]9\*69"_[&>*#CK%"I^$(DX"61,E%A<
MMT;TP]AE)B![XL] ;)*#8V)0YE)^,2</_G7+,242H?"TD>#P[TV,11@:)2C'
MO[EHJWBG"3P\WJO?9_  ,^>)&,OP4^#KU77KHD5\L>!IJ*=R\YO(@7I&SY-A
MDOTEF]VSW6Z+>&FB990'0PFB(-[]Y^]Y11P$N/V* )8'L&\":-4;W#S S4!W
M)<NP;KGFPRLE-T29IT'-'&1UDT4#31";9IQI!7<#B-/#L7P3BDR@Q4B;)"NN
M1'+5T2!L;G>\7.1F)\(J1"[)DXSU*B%WL2_\K^,[4*"B5&Q?JAN&"L[$^IRX
MSAEA#G,MY1GCX2^>/B=L8 O_JCAN44ENIN>BE?3W:)YH!?WN'UL-[12Z=@63
MC!^2-??$=0NR+1'J3;2&/_Y ^\XO-KSO)/85;+> [6+JPQ$DJ0^_FMR'?&E#
MQ>,7/$R$#0H-JPG5*Z!Z:*%NI9=F3*_;M:UP-W@X==H?;4AH5$VD?H'4/PWI
M/D@\'I+/@BMR#Q>M"8QJV4MJDH?8J&MH':4>%-2#_T4]$2J0?C4WKO;1.KB@
M,37Y+@J^"[1$=[$.]):, 5$!W@,,J._D=[&UL>%*#OP,7(<-F(T1C:W)>%DP
M7J(E&Z=*?=MQ8>8@,(%9<Q-7:[<I:[O4!HD&UH2D3CFS.J=UU;R/8HA'I(KY
ML')"Q 7JLAZX"'I2M\U;=BK64ND@7I*9YMJ>F4<4/UN-R!B/JLO)2DYV"N=#
MK(7:.5#3I'P/;N7$%:LXT:BZG*7AH:C%@ [GI2K0@4C(R#.9&@KRG$9SH:R(
MN!@,1&W:[??Z5M FO XMS0[%W4K>H%.Q#(RY@[[[S"-[BN)"T[O)X\.O=\]D
M_#*=6$&;\#^T-$ 4MS YJ&E)1<8P#"VELLXJ1W0>N8*UPLCS8"6F0,;?25J)
MF[!'M/1'%#=(KXK[V1"TC>8RM*+B E-H3BM7$P:(E@Z(XJ;E-="0C7)!*/MI
M_C/)4]7>EKC26$81+*5G6GI?K*!-."%:6B&*.Y@]&;E[]U8\AFY7F9NXT/-H
M=CNR&G@\L"YA:80H[EV*Z<23"F9,;KYLG&5S)C0PI*E,P0;"M"I].S:N?GMG
M16["%;'2%3'<RN3(K_R=//@P90:+P,NXD?GEB*33;8/+O70OK!,,'ER7MW1&
M["1G-/)]4$_.]@?D$9XC+[&U78](=BDD_39+7"6$/B,WH;\\)Q1Z3AI SZ&.
M8ZV()JP3*ZT3.\DZ%14Q-F?0R5_E)K96 B[WB8=ZQ2,K:!/>B97>B>%VYUO0
M(ITG2KX%L6=O<ESS:60%;<([L=([L9.\4P$ZD8F&]=Q?P;IRQ#JBZ+!NS_Z]
MKPGSQ$KSQ'#3D_75D1*\&@P7&%Q8%ZAX5%VLTB$QW.#D#3A;B3 $LFC-8ZN-
M.")3^<4/CZN+5QHEAMN;6<1#XW95L1KU$$9<JYJQ"8_$2H_$CGPOBH1:&K0E
MA.H52H@K51,VX9%8Z9$8[F(>9?:=;R5C; EZ1(3UG+9#J3T)FS!$;FF(W!,_
M$WU,N=)"A=O\\XEUEP'7TBJU-B$>5A>Q]$ N;EC*K^^PPDZ"S.TAC+A893_%
MX^I"EO[&/<G?'*ZI8.[/=M3(2ZIA:HS-<M1*_)T,2UX/.[5>IF:V<=^&O=Z%
MRQP*4^O;(6/G8-_0C"/9=FH"8P@L.W9;B,758LMVE&U4=LK'=_N]3]P,0PD)
MQ0)"G?,!O%[MME!W)UJNLUW(N=1:1MGA2G!?*/, W%](J?<GY@7%1O;P/U!+
M P04    "  $@E]7,>&+A#P'  "T'@  &    'AL+W=O<FMS:&5E=',O<VAE
M970R+GAM;*U9;6_;-A#^*X17[ 5P:Y$4]=(F!M(D6PNL:5!WVV?&9F*ALNB)
M=-+LU^\H*Y(LOC@!^J&-)!]/SQV/]SRD3AYD_4VMA=#H^Z:LU.EDK?7V[6RF
MEFNQX>J-W(H*?KF5]89KN*WO9FI;"[YJ!FW*&8FB9+;A1369GS3/KNOYB=SI
MLJC$=8W4;K/A]>-[4<J'TPF>/#WX4MRMM7DPFY]L^9U8"/W7]KJ&NUGG955L
M1*4*6:%:W)Y.SO#;<YJ9 8W%WX5X4(-K9$*YD?*;N?FX.IU$!I$HQ5(;%QS^
MW(MS49;&$^#XMW4ZZ=YI!@ZOG[S_W@0/P=QP)<YE^4^QTNO3239!*W'+=Z7^
M(A\^B#8@9OPM9:F:_]%#:QM-T'*GM-RT@P'!IJCV?_GW-A&# 3CV#"#M /+<
M ;0=0)M ]\B:L"ZXYO.36CZ@VEB#-W/1Y*89#=$4E9G&A:[AUP+&Z?GYYZN+
MRZO%Y06"J\7G/S]>G'V%F_=G?YY=G5^BQ8?+RZ\+]!K]M;A O[[Z#;U"186^
MKN5.\6JE3F8:,!A/LV7[OO?[]Q'/^Q9B^P;1:(I(1*AC^'EX^(58PG#<#">'
MPV<0>1<^Z<(GC3_J"W]7UZ+2B"LEM'KKBF?O('8[,*OLK=KRI3B=P#)2HKX7
MD_G//^$D>N>*[@<Y.XB5=K'2D/?Y.5=K!+.&EN9"_+LK[GD)P3MG<>\J:5R9
M5G _3VB4IOG)['X8CVW&"(U9UID=((T[I'$0Z2=>?Q.:WY0"*;'<U84NA$)K
M4:Z0EE#]VCQZ=,'>^V4#/-$(L6V!HXCDN1LQZQ"S(.*SY5+N()70V98"\@K0
MIZB"+BQO43N3RER_PM,LHLTLP"5-&.(:P9K08G,CZFYA- 90Z^W3MMZGQM56
M-(VO=(;/',$E># =^QPXS'!"XM2=@Z3+01+,P<?J'JI)UC!73>PN@(GU9H(Q
M3<D(H,.,9B3U $P[@&D0X'4MMKQ8(?$=2%#!A)@L2[V&%"\/^H +>6I!HA$>
MI&P/W+;">48]N+,.=Q;$_55J7CX#8F:]/$^SF"4CC ZS/,/8LV;S#F1^)+D@
M+6K].$7;DAN8D%O38[; ^=I;#[D]T1%.\+A@;3.<1TE*W9!QU)-?=*1D-:_N
M"M-H]FGU FT='<Q_#(4[;H@N.T:3-/% '? T#D+]0\K50U&63G#8>FF6Y(2-
MEY7+CC&&?7GL610'B0MH^59 =4)[YM\#!=IZ.9A'%H_KTV&5Q9$'8D]^.,Q^
MGZ$ZN2ZJ.U0*D'VH-OK.M.2=$B'(U-$KLRB+QZ ==H0U&L>)NZ="'.;"STU_
MJF1U?/UC![?%L874MLHP\\#L^0^'"7#?HYX'TT$_C++A<FZ1N@Q)PKS%T#,5
M#E/5'FT HH. &(ZQO=Q=AB1.? H(]UR%TV<IT[+@-T79*""G/,5!SGNI/OU1
MW@Z#[HD.AYFNDU%;_F@TE#-@F[]PEB=X/#.V&4D9BSWSTM,<#O/<N(\\S8]3
MCV&;N"@=++86JFV5Y,PC&DA/;B1,;D\5M)25P=M>JF+5!" KYV;'IB]H8]FX
M[%UF-&>>=4EZDB-ADH/YKW= (X.B=Z*T>2PF+![W#X=9BC'QH1SL&<-L=RY!
MZ=:ZD0T+416R1E=2!U0OL1F-9"RWE)G3+DY\W9GTY$?"Y'>H((]EUZ8RFE":
MC(G$81=',<X]4H?TE$?"E'>@)HZ!=7%>1*W,VF:$1I&O%'K:(V':N^H)3[ZD
M,1 'M=$HL5J#TP[3S+-=)3T#DC ##H"_J#_8? ?;-V;U!]N,8<9\J'M2).$=
MG"6&CE6'8]>6YN/=A<LJPQZF(#V9D>=LVUX UD%L"2&1!=?!;%&>)L0#N*<V
M$J:V/>!C*&VR8H0Q:POOL$L,1WB$$>UIC1ZA-;G9%-KL*O<;^*Y\E^:0Z%?3
MB1&.?G,>:@4]N]4-<LFD'^#H,/J>(2D.RL*%ELMO:UG"(E6_-!ML_>C4A33(
MM"_5A3_*VV'4/>/2,.->UT^4H$S\4_0J>A-A4(DUNN?E3DP1FT(W-_^06O/:
MG.WL]%K6Q7]B!;0LGYX62AE] 8PM=UK!YG\%I>-,GTW%XY/$H,EAH(,CVB-G
MM%#<LO)$^0YED3_,=XBQ:9K&TS1*NE^]AXM@"XMVFN39P-8Z<7S*5W-0=B1A
MMAI@UL&CT\BC%VBO%VA8+YRM5H4A+&A>YGSO=5&A)=\6T,R<0!V* 3:?A([E
MH],P3DGB ]RK!GKTM'BWV95<B^[\46Y@X:S-Y[%[D Y2N0_E;37P.J8L'>]]
M7'8TIKF'TFBO&FA8-0R!"UY74 MNH#;_QTE,Z?BXU&%'\Y2D'BJCO5"@8:&P
MIS+E:)9.N,YCVXPQ"Z_+$$>I3TC27BS0YXB% ?<V:^[9 636=QCW>873T'5>
M,1M\4C3?<S_Q^JZH%&C;6Q@9O4DA!_7^$^G^1LMM\Y7Q1FHM-\WE6G  ;@S@
M]UL)Q-S>F ^7W8?J^?]02P,$%     @ !()?5]M"1M7P @  IPD  !@   !X
M;"]W;W)K<VAE971S+W-H965T,RYX;6R=EEUOVC 4AO^*%?6BE3KR 210 1(%
MIE;J6E3:[=HD!V(UB3/;@6Z_?L=)F@$-7^4BL9/W/7Z..8[=6W/Q)D, 1=[C
M*)%](U0JO3%-Z8<04]G@*23X9L%%3!5VQ=*4J0 :Y*8X,AW+<LV8LL08]/)G
M4S'H\4Q%+(&I(#*+8RK^W$+$UWW#-CX>/+-EJ/0#<]!+Z1)FH%[3J<">644)
M6 R)9#PA A9]8VC?C&Q+&W+%3P9KN=$F.I4YYV^Z<Q_T#4L3002^TB$HWE8P
M@BC2D9#C=QG4J,;4QLWV1_3O>?*8S)Q*&/'H%PM4V#<Z!@E@0;-(/?/U'90)
MM74\GT<ROY)UH?6Z!O$SJ7A<FI$@9DEQI^_E1&P8[-8>@U,:G%,-S=+0S!,M
MR/*TQE3104_P-1%:C=%T(Y^;W(W9L$3_C3,E\"U#GQJ,GA['D\?99$RP-7MZ
MN!\/7[!S.WP8/HXF9'8WF;S,R.64"DA4"(KY-+HBW\CK;$PN+Z[(!6$)>0EY
M)FD2R)ZID$E'-OUR_-MB?&?/^#-(&Z1I71/'<IHU]M%A^QA\M-NYW=FVFS@3
MU70XU70X>;S6GGA#W^=9HB16J ]L1><17&-;@E@!P45# I[-U2*+L/X*95W*
MQ1AN/H9>1ZN!W;$PN]5F8C6BIMNN1%OXS0J_>1!_BFL A(" 8.'X;]<DI8*L
M:)1!'681R]L@L!J6O8-Y1+2%V:HP6^=ARA#K2Q*:J9 +]A>".MPB9GN#I&WE
MOQWBX[HMZ'8%W?X2-),RJP=N?P+913VDV()T*TCW2Y#X 9<*5RA+EG6D[E'2
M0XHM4J\B]0Z2CG@<XV?\E#KU3JG3(Z(MQD[%V#F#\:0B[7R:IXY56Z4G"+>8
MNQ5S]WSF_37:_;Q8VI[7\BQWA[=.B%*WVZGGM:W_.Y!U/O&1@BU#GL!=JZP%
M-S=V47V$^4'%DB621+! J]7P,(8H3@5%1_$TWUCG7.$VG3=#/$F!T )\O^!<
M?73T7EV=S0;_ %!+ P04    "  $@E]7"9NPX!((  #:*P  &    'AL+W=O
M<FMS:&5E=',O<VAE970T+GAM;*U:[V_;MA;]5PAO>$B!-A9)D9+R$@.-I6(!
MUC2HL^VS8M.VWFS)$VFGW5\_ZD<LF[QBDSU]22S[\$B'O+SWD.+U<U'^*=="
M*/1MN\GES6BMU.YJ/);SM=BF\K+8B5S_LBS*;:KT9;D:RUTITD7=:+L9$\_C
MXVV:Y:/)=?W=0SFY+O9JD^7BH41RO]VFY?=;L2F>;T9X]/+%UVRU5M47X\GU
M+EV)F5"_[1Y*?34^LBRRK<AE5N2H%,N;T4=\E5!>-:@1OV?B69Y\1I64IZ+X
ML[JX6]R,O.J)Q$;,5461ZG\',16;3<6DG^.OEG1TO&?5\/3S"_NG6KP6\Y1*
M,2TV?V0+M;X9A2.T$,MTOU%?B^=?1"N(57SS8B/KO^BYQ7HC--]+56S;QOH)
MMEG>_$^_M1UQTD#SP U(VX"8#?R>!K1M0%][![]MX+_V#JQM4$L?-]KKCHM3
ME4ZNR^(9E15:LU4?ZMZO6^O^RO(J4&:JU+]FNIV:3+_<Q\G]+(F1_C3[\NM=
M_/%17\P>];_/R?WC#'WYI'_Z_/ U^47C[GY/T-V]OD[0!_3;+$87/[]#/Z,L
M1X_K8B_3?"&OQTH_5\4^GK?/<-L\ ^EY!HH^%[E:2Y3D"[$ VL?N]I&C_5CW
MQ[%3R$NGW!(GX4SL+A'UWB/B$0H\S_3US0DDY_^[>_*O[W[6&?08(;3FHSU\
M7\5!Y'MQ!8UKT]*'6U8Y[DKNTKFX&>DD)D5Y$*/)?W["W/LOU*E#DL5#DB4#
MD9UUOW_L?M_%_M+]4.\W#7G=L"H(APGV,8[TH!].^]6&Z2H2^/@<%MLP/Z0>
M,6")#>/8#P+_"#M3R8XJF3/(IH54$NGT@70)+%.5Y2LDONEJ*(4$(X\-&7E#
MDL5#DB4#D9V-"3^."7=&7C4FJ%BB75DL]G.E;4%O)#9$[#02/9]3WXA$&Q9R
MA@U4;*,(9T'(C4 $8(QAZL&!&!Q%!S^8;E*DY7Q=Q^)"*]X4.^V+%*0Z %2S
M(#!$0RA"0D.TC:+$IP97 J'"JDA DL.CY- I>:9=FIYO[]%*Y'KN;6KIZ4*;
MC4RJ:BX>P#$/K6=AS.?,4 ^@*/>IH=Y&Z1CFGIE[(!AA)PGO3']TU!_](,[S
M*M_H04;S0CO@19V BAP2'5E/\('ZQ$JY (Q0+S)40V28<#/0 1C6W=.3<;'7
M.3_/J?NQ4'JPYX[,"UHYSQX$RFEHSG4(YX=>8*B+ 9Q/ L:,"9) .!I&)V7L
MO!M.##!V=L-=/B^V BW+8OO2!3H*0.G8?H30"TWA-HKI066F;@"FYP\U9=LP
M'+"0]LQY3#K9Q%EQOZBU*+5QK\5?O(SX.[#8ME0#5=M!V>)!V9*AV,X'I;/:
MV&DE=2P>A%15O6E'!AP-:H4$Y]Q,00"*8+,XQ0 *AQ@3,PH!LHCWY%W<65OL
M]K9WN1*Z&]5+P@'5^D NY9&I%D!18B9<"!5B:\I!J+XB@SN'BYUF;?)Q6Y0J
M^[M.+Y6M6H@G/<I2[M-\+IHT#.IG]M/XS-(/HJR< Z P#:P. &&\QUGASD]B
MMZ'L23F@:L J1J:W $ ?.(O,A0T P\SS3-$ &?9TA>E1W1E*[':4/:K?HUR
MKA+;)H^'9BA/ =0'AB/35@(P'/C$M!@06\2#/NV=L\1N:]G6UB>Q+$KQT@<J
M_=9C+0!_A[EI@J< S ]\;J4V&Q:0,(Q,Z9"IY)CUV:O.56*WK;P[JD473]I9
M+S/UKEI+'3+98RXQX/0XHU;8V[# ,_-_#*!82'Q3O8TB.M?UB">=MR1N;WDO
M7!6L;7RV<Q'BP"QA ,SW?,_,:@",ZPXQ8 ET4QJ0O@4CZ0PDP4XGE:1EKEVS
M1-H\(KE.2WBOC#AMZ%M-U*!L\:!LR5!LY^/1.5OB-&F3VU1F<W $FG;!201X
MEY2:40>AS!H9MZCP-)HN3=L$4)%+/^P)N,XE$K=+C+/-7HD%NK@OE$"8@!6T
MY3#$6E,,0@5F!050^!*;*S0 12YI3PTAG4DDOG-Z_5&_Z]%RTX->G*TJJ[3=
M:@M5SS2)BKV22B]?]0R$IYW3@KYYV@W)%@_*E@S%=CY.G;\E;G_;/^UL.\E8
M8&YS3$&8;SD:$,9#*QA!-MKCXDGG88G;P[YN[ME>DO'(]TS% "R@GKD?"K.9
M>2L!V5C4EVTZ_TK<_K4JY:V7N?BUD+!?;SE^6-%M&%C1;1A8T8&;NBIZ9UM)
M^(J]$2U93Y1U]5+\<#2O%YNJ"^!,X_3";\XT0[+%@[(E0[&=#T_GK(G;67_2
MBXELE:/YOBQ%/O^.5)GF<M.LK-/%__;-%@HX1I#%IJ$5I]">JXYGSPQ4 !=9
MNRP)!*,A#1@<J+2SV=1MLZ= B(+O:8'-6!Q$9D("8(00<P$2 S 6A%8*!F!1
M&+(^T9W?INX-VX?F?12XA'0W??,;Z4%-]J!LR5!LYX/0F6SJWCYVG@H8=+MX
M4+9X4+9D*+;S03@YF>%>"#C.!E!@8]?'F)FN"\!5IP/,MQHQ@/-#$F%S&PW
M<>QSWF-#:+<,H#\X!U%\3S?J>_.FJJ[/CO?1;JXW1^"@IG]0MF0HMO-1Z4P_
M=9_;<*:!0<]H#,H6#\J6#,5V/@C=FH2ZUR2N-, MBTRM% !@S.T. (.Q^7H>
M GG<F/CCD[.*6U&NZD.B4IOM?:Z:0VG';X\'43_6QR^-[V_QU10#W\?X*FF.
MF7;TS:G7SVFYRG*)-F*I;^5=!GK8RN8@:7.ABEU]4O*I4*K8UA_7(EV(L@+H
MWY>%7O2U%]4-CL=Y)_\ 4$L#!!0    (  2"7U>Q'=PLU L  +IF   8
M>&PO=V]R:W-H965T<R]S:&5E=#4N>&ULM5UM<YO*%?XKC-II;V;BB'T#E-J>
M2:1EKF^3.(V3=CJ=?B 2CM0K@2X@V_GW79 BM.QA ><H'V*][#Z'/0^[RWG.
M 5T^IMGO^3*."^=ILT[RJ]&R*+:OQ^-\OHPW4?XJW<:)^N8^S391H=YFW\;Y
M-HNC1=5ILQY3U_7&FVB5C*XOJ\\^9M>7Z:Y8KY+X8^;DN\TFRKZ_C=?IX]6(
MC'Y\\&GU;5F4'XRO+[?1M_@N+KYL/V;JW?B(LEAMXB1?I8F3Q?=7HS?D=>A5
M':H6_US%C_G):Z<<RM<T_;U\<[.X&KGE$<7K>%Z4$)'Z\Q!/X_6Z1%+'\<<!
M='2T678\??T#/:P&KP;S-<KC:;K^UVI1+*]&P<A9Q/?1;EU\2A]_C0\#$B7>
M/%WGU?_.XZ&M.W+FN[Q(-X?.Z@@VJV3_-WHZ..*D@\*!.]!#!]KLP%HZL$,'
MUNA _98._-"!-SJPM@[BT$$T#REHZ> =.GB5[_?.JCP]BXKH^C)+'YVL;*W0
MRA<5755OY>!54IY9=T6FOEVI?L7U]/;#W>V[F]F;SW+FW'U6?][+#Y_OG-M0
MO;N=_OW7VW<S^>GNKX[\QY>;S_]V+IPO=S/GES^_N!P7RGP),IX?3+W=FZ(M
MICZG1;0&NDWMW:;I9J-.P;LBG?\.])[9>[]9+%;E*1RMG8_1:G%QDSC3:+N"
MCT1V8,WGN\UN'17QPKDMEG'FJ&-3\WE93K2'V'F7YCF &MI1/\6%6@ 4I(RR
M9)5\:T",%:%'5NF155IA\C979U&2JP.MYN[B?^HT4HM! 5&VQ_$JG'(5>KB^
M8 'SA>NZE^.'4Y:L%LL%\'6^C>;QU4AY)(^SAWAT_9<_$<_]&T0:)ICL/880
MR:S&"3MRPJR<O(W643*/G:AP9O'\E</(2X>ZE$"L[)'$R8A(.1S/-VEAQN"%
M8$:SF=F,")\R[AI-I6G\@GA!X)GN!$ GW/4T3,U7_.@K;O=5_&V5E)/!^>&U
M7U:)DR\C1<N+7AZTX@\\P:;<\(CR,25<^ TO8UJ5F& A$IC&ICBR*:QL?E 7
M2#?)/-TH&LLU$MP[A'G*,W6"FN?GU&ILZ$*$"28QP<(^#M'H\(YT>%8Z;O)\
M5\VI]-Z9[S?7O-Q<'76=JB[*OA;JT^0ASLJ+1X@ISUP?@.W",]:&YI+4"T=:
MQS+4ITA@FMO]H]M]-+>?+G<0!59+0U<WWSS11(,J3'L2$RQ$ M,8#8Z,!E9&
MY5.<S5=YQ>B>RG1;7G+E3I0LG(<X+\H=[/CE+ED5T/7AV\ @@/H!-Z=48$PI
M8*,'P8@YKZQ#&\H"$IC&PN3(P@2=A:[Y9;4X='Y-3$8"$K!)@SA,FQ(3+$0"
MT]@E;AV@NO98)GI2,7&Q7*;K1<5D<DJJLEADJWD9DG7,LH,9_;I6!'1B3K1#
M4RVB,*?0K TQ,&>;?8Q#"<%"TQDYD0P(.B-=,\YN<NB4.Z!IS 3,\YK[&JI5
MB8H68J'I)-<* K%+")7><E&*=HOR<F4;)_E>3XB?RM<Q2"(UESKB"F KLQL?
M>A'?VZY$M1MBH>D4U8("Z:THW,5;%0^[53Q,06H 22%@@KC0\@=I"N:E^0S"
M%)Q0GP*.!U0%(:AG+JLAT)3Q0'#6&OF06E<@'<+"#SGAS7R>[I)JS;HKU(5"
ME"URY\MV$15QZ4/WPO6<_[R/-U_C[+\O^GG85 DN* D(H-G8#W+PV0\89A/7
M!Z0=5,,A8)CX5%AXJA4#8I<,9+*PJ#_=7&!&XE-BAN)J/I")Q[WFC$"5$U#1
M0BPTG=%:="!VU:&_)$T 8> PCXR)A*D.S%#19/]AA%B&=6IJ88+8E8F3?>2W
M7=(QLP"U(' %\Z!-WN^YCT *!&.^!^TC9ML+YKL3:!\QFS(W("QH7Y_JR)_8
M0_].@;K;D9@!^)288;\0W!,3$C2=C6E7HJ*%6&@ZJ;600.Q*0B^=FICA/'>Y
M"RB@=FN#%R=4?0 5+>SC$SV/64?_U![]_ZQ83<T8W4ALFM%^<X7J1I'V<0SU
M*!::[O4ZPJ?V"!]3J[:;&KK043.R9TVR4(-Z5+00"TWG]:0LP![48RG6% BX
M&37WX"DU<_/&W.J))>UC&\S$.6)W6L?NU!Z[GT.UMIL</-/,,%Q=3A#:I _3
MJ$1%"['0=(YKL8':Q08LY9H" 3Z!XOOIH:5UNO4%D_;1#>;B'!4(M!84J%U0
M.(=F;3<Y>+Z9*L.%8$&SQ 35J$1%"['0=(YKB8':)8;G2-;4C-(] BG6=MN#
MZ]]ZFI6H9D,L-)V@6FB@=J&A*IH$60 4 "BDLN,/)J&?58EJ-<1"TSFHE0O:
MH5P,2!I04U5H31I0LSH!%'L@S+:D ="V+6D -.U(&M!:%Z!V7>",20-J1LYM
M20/[00X^]P'#+4D#5,,A8-B>-&"U5L#L6L%/)@WLZ$.W<V9*!BU) U2[$A4M
MQ$+3&:UU"-91:= [:<" C/^$^%#!-&9 /T-%D[U'$6+9U8FIA01F%Q):BMGA
M>64&^&1R"#D,<DR]0 BS\GP&80KN4\]L*X&V%XRSB7FU%0)-V<1O[$VZRT[*
M_SNR]4-JVF%'HL;W#(COU3_?FS13!JAV)2I:B(6FDUJ'^,P>XO=*&3 SY/9\
MUP.N;^W6!J]-F&@2%2WLXQ.=DSK49_90_V=3!@P(Q(E9:3L]M+.)+3VAI'U$
M@WU[CC"<U6$XP[N_H$MBL9L:O.294;>QUJ'6 *"BA5AH.J]U],[LT3M6\H !
M>7E@CY\RLWP NK$-0H.F&&H0CX6F4U$'\0S_SH/.J89:D," ^Q (%4&SZAW5
MJD1%"['0=))KV8'990>L] $#0GU"B6^6J4\/3;L*W]L0S3A%VL<XF)%SW(K
M:X&!X]^*T#7M["8'WZD*W)+@33S:+'Q'M2I1T4(L-)WD6G/@0VL?\@.?VUU6
M?E4X1>H42Q7\SO_8K?+J\0(@LV8P7Y9DF;/NT-!V(=D72]H'-YB*<Z@,O%89
MN%UE>!85+SMG'&8=P90#D@'AQAV4J$8E*EJ(A::S7 LCW"Z,M,8+%I++MN$Z
M?GJ[2O/O^<LR!G\%<FV*'#Z%;OGBYCT/QASLB27MXQW,SCD4#G[R) :[PM&;
MG3</BIE%O.="17CEMA@G5;"7J\^S0RHVRI)T5SC;Z'N;E&L_H,'STQ0:./7*
MAT;HY*)J):AH(1::?@;4>@JWZRG/2:MSX.D%$T( Q==N?*CDU=NN1+4;8J'I
M%-62"[=++BU)70928XH@9!($0@"Y$FX^Q4$(,VZ809C"\RD# G&@[05GP@>2
MND!3[G'&_%:5D-=J!N]0,WHG"V$OHCZ"@9LBAN+#Y[[;3!:BVI6H:"$6FLYH
M+8IPNRC2/UG(@;H"CP5F!<+4;G+PZH0J=O0>18AE5R>F%C)XO_J)QFTQ\+P"
MR@,FOCNA@$#(3;4"6L5F$*;P")M JQ-4%^&3P+S,"X&FG'O$DL,0M=(@[$K#
MH/N+0$?:#0Q=H 14S>!S'DR:"Q2J78F*%F*AZ:36RH*P*PO]GH-E1OIE/1"P
M-MFM#7X0%FHA RI:V,<G.B>UQ""&2@S#DH4"*"Z +G/MAS&8K'Y6):K5$ M-
MIZK6"<0S=8)GY!7MI@:OCJ8RT+Q- M6@1$4+L=!T7FN%0=@5!JR\HC C?0H4
M^4P/[;3'5IH7#2 :<,%@']Q@*LX1ZHN3!S5V/';A#'E%N\G!4\T,\)E')DVY
M%=6H1$4+L=!TCFNM0'0\B $IK2B@YQNX#,@JBNYG0?8&D_;1#>;B'"45HA8A
MA%V$.$="T6YR\'P#GK?@F7<EH1J5J&@A%IK.<2U+"+LL@99/%$!)!87B E3-
MHJ=5B6HUQ$+3.:L5"V%7+)XC>0M3#O"8#]0-VFT/YJ>G68EJ-L1"TY]@7.LC
M7H<^,D#P]LSG.[0*WD!;4/"&,-L$;Z!MF^ --.T0O+U:??#LZL-/"MYV]*';
MB@?4,\""-ZI=B8H68J'M&1V?_(I'^:LN[Z/LVTIM%NOX7L&[KWSEK6S_0RG[
M-T6ZK7[8XVM:%.FF>KF,HT6<E0W4]_=I6OQX4_Y6R/'G:J[_#U!+ P04
M"  $@E]7)CKV%Q$)  "L*0  &    'AL+W=O<FMS:&5E=',O<VAE970V+GAM
M;,5:;6_;.!+^*X1O<6B!N!9)O=B]Q$":--@ ;1+4W=O/C$3'O$JB5Y3SLK_^
MAI)LVB+%)("!_=)8ZG#TS'!FGAE*IT^R^J56G-?HN<A+=39:U?7Z\V2BTA4O
MF/HDU[R$_UG*JF U7%8/$[6N.,N:144^(4$03PHFRM'\M+EW5\U/Y:;.1<GO
M*J0V1<&JER\\ET]G(SS:WO@A'E:UOC&9GZ[9 U_P^H_U7057DYV63!2\5$*6
MJ.++L]$Y_GP1!7I!(_%?P9_4WF^D3;F7\I>^N,[.1H%&Q'.>UEH%@S^/_(+G
MN=8$./[JE(YVS]0+]W]OM5\UQH,Q]TSQ"YG_*;)Z=3::CE#&EVR3US_DT^^\
M,RC2^E*9J^9?]-3)!B.4;E0MBVXQ("A$V?YESYTC]A: 'O<"TBT@_07AP +:
M+:"-H2VRQJQ+5K/Y:26?4*6E09O^T?BF60W6B%)OXZ*NX'\%K*OG%[<WEU]O
M%E\O$?Q:W'Z[OCS_"1>+G_#G^]>;GPMT>X4NSA>_HZMOMW\NT!C]L;A$'W[[
MB'Y#HD0_5W*C6)FITTD-:+3.2=H]^4O[9#+PY!GZ+LMZI=#7,N/9X?H)6+$S
MA6Q-^4*\"A=\_0G1X 21@% 'GHNW+R<>.'3G6=KHHT.>96J%EI F"BTK62#(
MO(K5HGQH0U?4@JO/+K>U:D.W6IW6G]6:I?QL!'FK>/7(1_-__PO'P7]<-A])
MV8$'PIT'0I_V^0U4H>LRE05''[Y)I3ZZK&U5Q(T*77,>YW$2Q-'IY''?#%L*
MTX308"=V ##: 8R\6W2>_0\R#(I2K5 MH2JELDQ%SE$)R$6+'.[KJU3OYKJ2
MCP*"%=V_O'T[HV-NYY&4'7@KWGDK]F[G)0>EJ6!M^2TSQ I9U>+OYH;+\E9=
MM+=I43 +26]K;2D:QT'DWMEDAS7Q8CW?@X;D$@K[/>RH4AM6IARE4M7.BI58
M6"#,: ^P2R@>B,3I#N_4BW=1R_376/-1!N@*(&DUZ-:I_?P9QD$/I2U%<!"%
M;IBS'<S9*R&PY%4%&+?)P9ZY.M$)X@(ZLR",9TD4]X#:4C@AQ(T3!X;6 B_2
M"^ 62$Y(;? G-!U9DZUNAW:J#H!23.(^4I<<AN0:<"K>XV#L+Y2R'#<%1I0U
MA\3=%A\G6&R#: GO$*LM-A"BF!B8Q OSME[QRHF)6 ^;QKB/R!8B> B3(5G\
M"LNN&.RRTKW(7D56BD-)US4J%^Q>Y$UU/D'\.<TWF980!93)6E<&EOZU$4KH
MV'#7;WQ4/CZ6MD-W&4;&?DH^3U.YT70'E9R+1W:?NX,LM#>4XCXI.Z3&TSB8
M#>RI867LI;'Y=?D(>2LKV#,GN,@.I&B6S/KH;+%Q'-)@.@#/T"#V\^!=Q==,
M9!!-NDSS-LZDSHTN\)R@;9H;XR"A5M[:<C@>@FS8$/OI\':7&CD'CD&5'FYT
M]&_@P@/:074!"2S,MMB8@!@=@&U($?M9\?8UI]HD-TZ"I _/(45F0SXU5(C]
M7+A+I35[&<PC!P5"9;1"U2&& TP&B(48%B1^%@2,U8:;4'5A) Y6(U,R"WL@
M'7(T" ?VF!CN(W[NZX?F-U.PG6@=])?$29^J'6(DQE$R@-90(/%3X#=9/HR!
MHXM]8G'BM-G.JE .F3%,-0,8#242+X?,?\J:Y6\;6)S(J5W[PVG43WJ'&-;%
M 0_ -Q1%PG?-S0+80+UET")>ZGLO41]+VZ$7# <2/P>>[[4E38.MJW6SITW#
M4O5/3#H7.#B/)-/0VCQ;;J 3(X86R6NT*%/.LV[7"E9O*E&_:-@%JW[Q6M=(
MI'BJ;\,6HA7/,SU=;R6=]CC8$'I=J]MUR W98SB3O#)"9EGK?@TR96L!627^
MAEQ2<ED_L<HS1A(7(2;4*E(NL6B([8FA3>*GS;M-E:Z8[DS ^5 "(/'KEQ.T
MSAE,0[I9X1!!:WWLX03OHLL(TW[WYY*#_FHVY'A#K,1/K%OX&KT>B')]Y+N!
MDK8UQ8G:IM#^1.P0&8=1$ P IH9EJ9]EVS;%5:><QWLVCY+^K.20&3KKHH9I
MJ9]I!WCAPT8U _W'MUM@DVL8Q[3O;X<8C,MX1@8"G!H6IN1=%+$4)2O3MQRM
M>MG]W6>K1])VZ(6]\V4_SQ\67/[,JU2T6:/T:1(0?E.^G'ZPR9M:!S,.(<TE
M YMG^)WZ1] []J)+C\99LV?T).K52N;-5"[O<_'0G=F5:!N,(*C/1"J1UKKZ
M:MN<-CFF44QP,NV;Y9*+H.$=,,Q0-O53]@\8"W>F74A(IJH6FO06O!2R0C>R
M'L@G!VM;@Z%+" ]EDB%M^@II&\2<5:7<O.&XC#I&V61_H.H OYF3J>%DZN?D
MPY#?G>?JUD@6!<1,$QV#!Y+40;C8<K0M-(3;,#+U,_)>Z>VJK;-F.3$[:!;/
ML'4XZ92C03PPH%%#Q]1/QU^72]X>E?'GM#EM0Q ;T/UT)V_@];8OA<:B^:&[
MBT>6Z[<J3H-<-#R;6?:X9N(HC@?FB]"P=>AGZYOVW4[53)L?,M[^TNSW/CM"
MFZ/U@8[%Y0ZY,0S.T9 AAL]#/Y]K%CRQH#;X]^IEVDC=\P=1EETUA29*2.?\
M$-J4'1$:1OW<=LC% 9WB 7((#;.'_OGZ8F@'3A#7IVQ>\/8X#4U)8HW=#KDH
MH70H4T)#R*'_+'JQ6:]SKNLI)'LF5)I+M:F:\E2:$_Y=CP7VO+EQ"8]Z"'TL
M;8=^VGLM_,HA='<\WPVR:%,"W>R=3S0'0>Z<L[D;8V)ML"U%HF3HE6)H"#[T
M$_Q5SI^_"*E>(!JOR_23$^%17_<>2]NAP:8[".-_+*"]?<F[_70D;8=^,FU)
MZ&]+KIBH$!2JC=6*-#T*A/@2^K^]-TU.C]A]1Q3:'T*\N3L)37<2^KN3<[U/
M&?<$M7?]NS?K2-H.K37]3#C[QX+:VTF]VT]'TG;X:8SIDR)_G]0/:O?[].W8
MH-\HYDPW'+5\+=*[!^]_S9,0JXH[I/J1/MG[[JW@U4/S.:!"S7N9]KNQW=W=
M)X?GS8=VO?M?\.>+]L-!HZ;]CO$[JZ!S4L!)2U 9?$H@\ZKVT\#VHI;KYNNZ
M>UG7LFA^KC@#]V@!^/^EA+&ON] /V'V@.?\_4$L#!!0    (  2"7U>#J9'[
M;0(  /@%   8    >&PO=V]R:W-H965T<R]S:&5E=#<N>&ULM53;;MLP#/T5
MP0.&#2CB2Q)OZQP#N:(!VB:HN_59M9E8J&6YDIRT?U]*3KQL:_PP8"^6*/$<
M'M(BH[V03RH'T.2%%Z4:.;G6U:7KJC0'3E5/5%#BS49(3C6:<NNJ2@+-+(@7
M;N!YH<LI*YTXLF=K&4>BU@4K82V)JCFG\G4"A=B/'-\Y'MRQ;:[-@1M'%=U"
M OI'M99HN2U+QCB4BHF22-B,G+%_.0F-OW7XR6"O3O;$9/(HQ),QEMG(\8P@
M*"#5AH'BLH,I%(4A0AG/!TZG#6F I_LC^\+FCKD\4@5343RP3.<CYZM#,MC0
MNM!W8G\%AWR&AB\5A;)?LF]\PX%#TEIIP0]@5,!9V:STY5"'$T#@GP$$!T!@
M=3>!K,H9U32.I-@3:;R1S6QLJA:-XEAI?DJB)=XRQ.EXNKJ=S6^3^8S@+EE=
M+V?C>S22>UQNYK?W"5DMR'2<7)'%]>HA(9_65$*I<] LI<7GR-4HPE"YZ2'@
MI D8G GXC=P(Q"LR+S/(?L>[*+[-(#AF, DZ"1.H>J3O79# "_I$Y:A/==#V
MV\+T+>W@#.VB@)<)$^I579!EF?;>R[23P;33I:IH"B,'^T6!W($3?_S@A][W
M#GV#5M^@4U]B$R5B0U+!.;YO?"KI$V%*U9 1[%9\\,\U4\P\_O?$-_1#2V]:
M=Q?W_8$_C-S=.ZJ&K:IAIZKQ#N-E<+YDG?!_+%G8B@O_;\G"OTHV",+ _Z-D
M[DDW<I!;.W,4QJQ+W31F>]J.M7'3S;_<FYEX0^66E8H4L$&HU_N"L64S9QI#
MB\KV]J/0."GL-L?1#-(XX/U&"'TT3(!VV,=O4$L#!!0    (  2"7U>(:%DB
MA (  , '   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULK55M;]HP$/XK
M5E9-K;215Z!C$*D0JE5:)U36[;-)#F(UL3/;@?;?SW9"!FU J.-+8I_O>1[?
M^70WW##^)%( B9[SC(J1E4I9#&Q;Q"GD6'18 52=+!G/L51;OK)%P0$G!I1G
MMN<X/3O'A%KAT-AF/!RR4F:$PHPC4>8YYB]CR-AF9+G6UO! 5JG4!CL<%G@%
M<Y"/Q8RKG=VP)"0'*@BCB,-R9-VX@VF@_8W#+P(;L;-&.I(%8T]Z<Y>,+$=?
M"#*(I6; ZK>&"629)E+7^%-S6HVD!NZNM^RW)G85RP(+F+#L-TED.K*N+93
M$I>9?&";;U#'T]5\,<N$^:)-Y=OM6B@NA61Y#58WR FM_OBYSL,.P#T$\&J
M]QH0' #X-< _52&H <&I"MT:8$*WJ]A-XB(L<3CD;(.X]E9L>F&R;] J7X3J
M.IE+KDZ)PLEPAE_06J 9<%-S- 84$1%G3)0<T&?T.(_0Y<45ND"$HI\I*P6F
MB1C:4FEK!CNN=<:5CG= QT?WC,I4H"E-(&G!1\?Q7X[@;15S$[BW#7SL'26<
M0]%!OO,)>8[GM]QG<CK<:POG_]2G[U;?2X;?5(%O^/SW5$';8U=T03N=[FT#
M4> 81I9J7@+X&JSPXP>WYWQMR_0YR:)SDDW/1+;W)D'S)L$Q]O"'&A)W-&8Y
MH,OO3(BKMG>H*'J&0H^$=>A>NWU5$NO=!+_U"IS Z>Y[16^]>GVG]\IKVJ+H
M]SW?:=RJ8.V=EI0#7YE9(%#,2BJKNFRLS;BY,5WVE7WL#B9NBSU2XZF:)O_H
MJ]EVC_F*4($R6"HII]-7'9-7\Z+:2%:8AKA@4K57LTS5B 6N'=3YDC&YW6B!
M9FB'?P%02P,$%     @ !()?5[ 3':S$ @  \ 8  !@   !X;"]W;W)K<VAE
M971S+W-H965T.2YX;6R=55%/VS 0_BNG3-I @B9-2S=8&ZEEF\8#$Z)L>W;C
M2V,1V\%V*/S[G9,T%"G-PUX2GWWWW??Y[/-\I\VCS1$=O,A"V460.U=>A:%-
M<Y3,CG2)BE8R;21S9)IM:$N#C-=!L@CC*)J%D@D5)/-Z[LXD<UVY0BB\,V K
M*9EY76&A=XM@'.PG[L4V=WXB3.8EV^(:W>_RSI 5=BA<2%16: 4&LT6P'%^M
M9MZ_=O@C<&</QN"5;+1^],8-7P21)X0%ILXC,/H]XS46A0<B&D\M9M"E](&'
MXSWZCUH[:=DPB]>Z^"NXRQ?!EP X9JPJW+W>_<16SX7'2W5AZR_L&M\).:>5
M=5JVP<1 "M7\V4N[#P<!7Z(C 7$;$->\FT0URV_,L61N] Z,]R8T/ZBEUM%$
M3BA?E+4SM"HHSB4WM+T<#3P8QH7:PM(8IK9(V^[L/'24P?N%:8NV:M#B(VB7
M<*N5RRU\5QSY^_B0F'7TXCV]53P(N,9R!)/H#.(HG@S@33JYDQIO<@2O3^89
M;%[A1G'Q+'C%BC[5#>BT']3?FRM;LA07 5T,B^89@^3CA_$L^CI >=I1G@ZA
M)[?,H1&L@ <TTH+.^FK51WH0MI_T+ZW09W YPK66)5.OGRQP8>@.:4/)#:UF
M(D4:GS#KCS_!<A *[JL"83QCY^.3['2/L<:T,L()I!/QDN:>+2Q3YY?'EY/I
M*3"N2X?\#*3F(A-^1#E(,!UUTLV!M<#1R>;TXGP,KM7.WK0#IQPT]9YT)FQ*
MF_94,4-P@/Y $A_*)C=D[\_4" 9*=-&5Z&*P1"W%C2=X4!18-NKZBC,,F+'"
MX@"Q64=L]E_$'KH-[N,VC'F46WC0A22:;=UK+:2Z4JYI2-ULU\Z731=[<V_>
M@EMFMD)9*#"CT&CTF;;+-/VU,9PNZYZVT8XZ9#W,Z4E"XQUH/=/:[0V?H'OD
MDG]02P,$%     @ !()?5\3%S;+=!@  (Q$  !D   !X;"]W;W)K<VAE971S
M+W-H965T,3 N>&ULI5AM;^0T$/XK5I#@D+;[UMY[6VG;.^"$$*7+W2$A/GB3
MV8VYQ,[93O?Z[WEFG&0#M(6#+VWL>,;C9YYYQMG3O?,?0DD4U:>ZLN$L*V-L
M7LQF(2^IUF'J&K)XLW6^UA%#OYN%QI,NQ*BN9LOY_,FLUL9FYZ<R=^7/3UT;
M*V/IRJO0UK7VMQ=4N?U9MLCZB6NS*R-/S,Y/&[VC-<6WS97':#9X*4Q--AAG
ME:?M6;9:O+@XX?6RX)VA?1@]*S[)QKD//'A3G&5S#H@JRB-[T/AW0Y=45>P(
M87SL?&;#EFPX?NZ]?R-GQUDV.M"EJ]Z;(I9GV;-,%;35;16OW?X[ZL[SF/WE
MK@KR5^W3VI/C3.5MB*[NC!%!;6SZKS]U.(P,GLWO,5AV!DN).VTD4;[249^?
M>K=7GE?#&S_(4<4:P1G+25E'C[<&=O%\G9*AW%:MS<Z:K<FUC6J5YZZUT=B=
MNG*5R0V%TUG$?FPURSO?%\GW\A[?S]4/SL8RJ->VH.+/]C/$.02[[(.]6#[H
M<$W-5!W/)VHY7QX_X.]X./RQ^#N^Q]\=IU2_KC8A>I#EM[L.G/R=W.V/"^A%
M:'1.9QDJ))"_H>S\RR\63^8O'XCV9(CVY"'O_S-5#_M>3-6_=Z\N=#"!%U[Q
M*6W44F _EZ1RAU3;0 4_!:PO=,1@:ZRVN=&5"EA,*.H8E+%YU8(8JB1/QJI2
MWY#:$%D%\!KM\69SJZZIJ<P.DY?.-\ZGK1Y%[/7E%\^6R_G+2U<WVM[*:/%R
MTD_W=G^==ZWOII3S_>2>NKFO$164(G>^0,"$8HRE@A?RNJIN^0TU?"!]0*7Q
M.(AI*N RO(83CO"M-3Q:\YF#>M1M]NUJ=35LIVVAFM:'EK&.3LQ\*\[PQM.N
MK>3( O???:XI;[V)IEO_^E->:KLC@%77)HAR]MNN7U_VNTX4U%S]U&H?R5>"
ML?/("%:SU*G%_.@G\;?RT>0588*WOQZB4>NC7V1!X91UL4^E DA]G,:FCB'2
MBY5;YR*6DBI,R"L76E 'Y_O8FB[1#,N4210^CT:A=&T%#\ -38FAA\WOK4VJ
M+PGD>'1;"'#_[)"CY?P*K3C#''9@)YZ0H8&V79)'_%L\?1G4RMH6#A.F8TB_
M%]399 L(L.26M%?$VJA>44[UAKPZ7HBZ+2=J7YJ\5'L=L+S"DN$D2*2XI8UO
MN6!Y,0OBD.EAPS[? FM752DC2-(]-<D <>9,O$U;<E[Z1 6T'HM>S8N9K;7^
M0(I"-+6P49 +Z.]-HFPL=51ZNT4'3L063+A\:JX>X3364P=Z9?3&5 <V'YC"
M"Q$7UQOO?)]-VH53V[/PW@3?%XZG&[)M%P!]:IB%014H,A#A8"2%3]ZX(B1P
M-VV I(;.#K&ZVN0*+"0?<34"F$ /-P4VW'I7JYV[(6\YH"-@FNBH\X2;X?M.
M:/!(O29<_OCNS:NCQ7,%KA4$WY..B.R0RRZTFX D,3PWVAO=G4<(L[I>'UVZ
M=T=+@.B=U3?&M]"CK'>:01%VE=L IAVYQC&>3%"F B0_A@G<-PV4 O+"%"FQ
M(R$7>)&[$)E:0?+40\N'XZA(DC]$ K'R'&&)NQ(K1*<F9!&1$S"8V>G:0SY\
MQ=*(S8+ K2/4"NA@#.)!;4*+ CFPKW:>U66+Q@6@&3B<(6?%HJFT,<]@5;<3
MQIE+-&4DX @L(&R) I3DQ-*%$;&G_[6W)>5)O6( H1,,P<I@>E\Z])8CM[?P
MQFDTA4$&>=L5)W;4C$$D\GEOW_L5T+VVH>?/H9-297!IU%U/.L2-9>E0?3 "
MJ.6*Q@Y\F-1(0J]R&NE'#+UX<-SCP,;]L+\E2/7OR0^2GX)@TT&AINI-\N\:
M8SO?(XPF X"#&+=VI.2?G0_FI"Y^!\%D?B*F)DC@V-I9<-QRWZHFH ?35>KK
M8*$LE#H$UEU6<ZVVVGCA_W /ZN YQ-&X8%(?% ZL^8Z0Q+Z[RD[$H*<CQP%M
MZ=I^WS-BZ2G5EX70@.QRLT[=X^\>92'W$7G(=2C5%M]?_]]=8LW#H0I+3=T+
M9(\."YPGN2_T(!K ;6PAQ+JAI+_),ZH7'9T%.)>D=J[A!FU(.N<4+3:G/]]0
M<2N"E'KL^;8I1!3>4TIQ07[,8^D970F"6NA/W(I C@>=/<I6Z[<9WQOY(61?
MLUK==0?X#&JBR.]EA5PY4@FA-$<U%H;0$ N'PF2%-X830HRM,)^TEW$=M:_Q
MU2,5J(B?*(8^5'^R_<OQOOJL@W$(H[O>]*XOH-GHPQ6"OY//<Q%D&],W[# [
M_ *P2A^^A^7IYX,?M-\9D+"B+4SGTZ>/,^73)WD:1-?(9_#&1707>2QQ823/
M"_">+ZC]@#<8?A<Y_P-02P,$%     @ !()?5\O[?GRL"@  YAX  !D   !X
M;"]W;W)K<VAE971S+W-H965T,3$N>&ULM5E9<]LX$G[7KT!IO+-)%2U+U.$K
M<96=8R>[\6S*3C(/6_L D9"%"4DP(&G%\^OWZP9XR*:<8V=>)!Y W_UU-_AL
M8^RG8JU4*;ZD258\'Z[+,C\Y."BBM4IE,3*YRO!F96PJ2]S:FX,BMTK&O"E-
M#L+Q>'&02IT-SY[QLW?V[)FIRD1GZIT5196FTMY=J,1LG@\GP_K!E;Y9E_3@
MX.Q9+F_4M2H_Y.\L[@X:*K%.559HDPFK5L^'YY.3BQFMYP4?M=H4G6M!FBR-
M^40W;^+GPS$)I!(5E41!XN]6O5!)0H0@QF=/<]BPI(W=ZYKZ:]8=NBQEH5Z8
MY#<=E^OGPZ.AB-5*5DEY93:_**_/G.A%)BGX5VS<VNET***J*$WJ-T."5&?N
M7W[Q=NAL.!KOV!#Z#2'+[1BQE"]E*<^>6;,1EE:#&EVPJKP;PNF,G')=6KS5
MV%>>O9;:BH\RJ92X5+*HK(+%R^+900GBM.0@\H0N'*%P!Z%C<6FR<EV(5UFL
MXNW]!Q"JD2RL);L('R5XK?*1F(X#$8[#Z2/TIHVF4Z8WW4'OI2ZBQ)"&XKWZ
M4HJ+Q$2?Q'_.ET5I$1O_[5/949SU4Z1\.2ER&:GG0R1$H>RM&I[]_--D,3Y]
M1-Y9(^_L,>K?XYG'"84CL8.6>+]6XH5)<YG=B:I0A;B55IN*_I-*NK3)<VLD
ML* 0.D.\E\HB#'5V(TIL7A'A6R9L5D*#I"P*17]9+!(MESK1I5;%:(N52O/$
MW&&16&MEI8W6=P+X @9YA;V0)"9F*8M*K#ILRK4L*0%TJO^ 3"0$UA-WLR07
MR&6B:D(D! G[8&F5/5R\O /(?*ZT=;J!2\\:Y83;K!4L<RMU0F]'XM\/6=OF
MTDML/P%B<VE+'6E8 2\VIDIB%@G*YA;/O579A@(&J2UXQ\@3"_C#$XJ1[!"P
M!.SB^<J:5!2FLA&[*5; [!@>)EW+UO C\:%'\?NB A8),[L;?_[I*)P<GK)W
MJS2GP,#U$B#/J_Y,1<EG)%&L;E$Q<BC7J$X[EJHH0<55(X[/V@M$FU9$VD95
M6I0RB^JXZX1/&W :[K3F$QP9FTV&W:7!?JN42(AUL<W7&9>#W%NM0,@FJ&G%
MR> M;1 3L<\Y)IUYFNU5)N/?@>2X^UP9^B,3N'QR1<D;K7!)0([3D4SJ5.J8
M1RMOY8YOQ%JZV*XM"#UD!/J%ERO<(=>V,,2Z0*8DTNY@_$#<H(=$*_W7Z'GI
MICNDZ\84Q<-6RE*0%/HFTRNP0IBSZ^"=6S@W2;K^3ENX<['@X\69JA<U0)%P
M$*&8&A^G-2R6=SGTQ*Z5SA!?NG720[QS(J'24!XV3FN!57>434U,$=="8*-V
M C]V9<22>^#%9)U' KZN,=JQ(6%;<SB$@PZI ?'?J_C&6>9-)B)E"4V@/@I!
MT,UKACR8V-MRR[P2R$TFY_2)]6JE+.GK4\C#3U_^,<^BBM8U0XJ>UJS(WY*]
M!J)-W<XKFYM&.N91&Z WQ3>Z7./]9JW!YMZJ3F"0*R*PNS$6A2+>\@PS,AM"
MG9I?7GE_8MT/!.$+6:P#_A6OX RLX%), 73)7F2_7JL(I8_S[A>5L/DO94F/
M[ARD,?8PCO)ZUU0W=<YCP]]),6)'OT+=8Y>V[(J6W=JS2VMVDOV(=@P.62K;
M]&1,XZ6*_-,)/PW%$Z1-12S8,\@:+"N>G@S.=Y 9G",62S;\/ZQ!M+O?5T6I
M(8**!VPJXG5?B9/V%3)5W=6U9U6!H]@3"[ X/#S&%=>O\'3KRK\=O#<EXBW:
MQ>2;Z3C]'MCCKU-O'DZ#V?QHAUC^[5?5JZG4.^O_>O_E-P7)R>##Z'HD2LN1
MCG9%)TA_IC4Y%<4:)M@G5!*3\3@(CX]%.&LXT:,IXJ"5]+OB%1Z J(?S0UR!
MZI9KZ,719/"RLDW#BCI>KE&XT)_ 2_ 8.2G8*JB F6C- +!'PHW&:"*3Q(/I
M8C^E.4?TZ4MXPY2 4IHK)6"1 (:;FK8\KPU9#^,UL+S426-%KE!HOX#-VQ)%
M"<H,<(9P>*TIM6Z!2(Q=LB]CJ3P2@ ++L**D2N9C,#) ,H]KD:$FL>"G66$2
M'?.6I4RH=Q(\5+)(:-SZU&5^KE7_9Y4ISF9?9+?YD3P/IX5MG'J@1,?%:,TA
M(8]IE4PZ>I8]^$.H7(,AE*%CAY/!8VG9IF*#L-070*$[A>:%NA8JPGM-[.[=
M"]F>-ST3%Y<3*:Y(+0['"UE UM=]G41;![L-6%H3@MY=4Q)9VY!=,EGRJ"Z:
M : M%W\UFM>]<-U[UET>FPK;2,>3P647T-"M.AY[8GIT',P.ISLPS;\=O&V-
M<C*X;L&%@@0Z4EJP_C$J,3=!_>0F83 _.FXN!F_1[OT8(<*?X^9B9RGX/VTS
MFP;'X:XRY-_^:;8!M?FXN?AQV\PGP9QMXR]>M-M?;&VOB\4K:3-#;>>N$!.!
M;WF_Z+1*A0M0[G,KPJ/= CY!X40S2<M5_-3U<!M:3]/ILFF.&89R-+;4#)LL
M\^>'#;A'P*Q$$5+*"!L(Z6ER@0#GM[B.@=UOLF@DG@S]_? ID6H5@1(33K?7
MB?IRH4UQ5S1;VD=NUSEFJX35#L1&,@J%\VY%0K>)].?!=9_Q2CG[B5QA9HF9
MSYZ8A3U[-J9O1P [%+GB22]!2;I2Z.G))+]BUA.S0 S/.VH/(6245+$K ^]0
M5<6;-] &JHJC@)T:CD\[*'==-_8.Z:ZK',:D>YJXZ B3MR .P!&U6M#9*U!U
M_U^\G&68;LM EK]OR6#HVG$@H54YDH#'"QG'O$,F6T<(;3GLCQMO'PQUOI%P
M[E!?R$I0'/:J$J^/%&@=0(3/KUP*WYNB,!M'50(CN&'-!Z0 +Q5X4LZ8$I-<
M1!67B=4X[-2AX-N5'B-Q3N7 P-ZH'K6%6,-&M(?5>*?V=5[65A#<?[0^+WNF
MD5U5X\*W%KV%&_W:/)B/ 9\=WU)+\JV2UG&\"!;3</!.WJ7^".RK.YZ(R2R8
MAX?B*74*C<V_CV\!,E F7"Q IJ-ICXO0J2Z"Z>R(FZ6V=-?U8,>82ET),N*K
MVM3 Y@*48NX>N*'.E'264%D?ROB=<?CB8KZ;@5DF^L8?U% ^>7R[AV5U=-R+
MC.ZHW'?^VALSE&41[$?8%/%I ! "@;2SBOCJT>V_7*(T9TSBO8K6F?Z,-UNG
MH6]XL+_B#/F-/^; 6.<TS./!D\G3P3MKENW!T>"ZXD,VZOC$W]POQ$I3" J<
MTW\PLWUWD)"[6&3X/@ZF1U/^6(+V5]K$-#*_K+'@BH+^<#0!7?X=?#0 #,=Y
M,J4G^QAU1@N\#R>C0RRX0N1DE?,$%E>IVB=>P6PQWF)5K_M9IOFI7RGFCN+Q
M: J"1Z,0]/I%6KB%3K+%:(Z%VT;9,L:ES*H5M>P<V_15@B)2\O<\GE^1['/1
M(;"_J<W.GU/ U>7 H\(L1C,6AF2'EWI/N#<8JD1#'--$R6E'-KWMFTIV)D!S
M3-WW2<4W^+^:S-[K\3OSISMA)C=E9)#4?3.CT_IX9ZO#PN,G,Q!Z/^U^P/%G
M3MLJ?.UPLCU=?&RBR+IZ\% QZONJ==#Y]HC8O^$OK#1_P%'N,V3SM/F(>^Z^
M7;;+W1?@2VEO-$(C42ML'8\.YT-AW5=5=U.:G+]D+DU9FI0OUTK".[0 [U<&
M[8&_(0;-I^VS_P%02P,$%     @ !()?5\F8/RE'"0  Q!<  !D   !X;"]W
M;W)K<VAE971S+W-H965T,3(N>&ULC5A;<]LV%G[7K\!P.[O.C**[%3MK>T9V
MDS:=:>*IT^[#SCY )"BB 0D& "VKOWZ_ _ :RTI?;)$ SOW[S@&O]MI\L9D0
MCCWEJK#74>9<^78ZM7$F<FXGNA0%5E)M<N[P:'936QK!$W\H5]/%;+:>YEP6
MT<V5?W=O;JYTY90LQ+UAMLIS;@ZW0NG]=32/FA>_R5WFZ,7TYJKD._$@W._E
MO<'3M)62R%P45NJ"&9%>1YOYV]L5[?<;_I!B;WN_&7FRU?H+/7Q(KJ,9&224
MB!U)X/CW*.Z$4B0(9GRM94:M2CK8_]U(?^]]AR];;L6=5O^1B<NNHXN()2+E
ME7*_Z?W/HO;GG.3%6EG_E^W#WO-5Q.+*.IW7AV%!+HOPGS_5<>@=N)B]<&!1
M'UAXNX,B;^6/W/&;*Z/WS-!N2*,?WE5_&L;)@I+RX Q6)<ZYFTW\M9)6^@CI
ME+U7XNE6:GNP8_:AB*^F#CIHYS2NY=T&>8L7Y%VR7W7A,LO>%8E(AN>GL*TU
M<-$8>+LX*?!!E!.VG(W98K98GI"W;!U>>GG+%^3=5A9OK&5W.M_*@H?:*!*V
ML188Z,?COYNM=09U\[]C<0AJ5L?5$);>VI+'XCH"6*PPCR*Z^><_YNO9OT\X
ML6J=6)V2_IVL38Z9>U+@<7.7$_8=1>Q3P3:ED8K-WX0,L3%SF:#@EKPXL!C_
ME7 B8=)90' @C2M%_V@_Z,(Z9$$6.R:PR1V8+)R *3@FBX'BLC*VXH5C3B-Q
M[%W8?E^9. ,\V69GA !M.'86O;O?1*^ *)<-)'Q^V-RSG[4B=38X<A9]_(4]
M@!R$B5Z-V4_\H 3[S(TY^.)X@'%*',*;,>-D5"(?95)Q9=D94.AIYE&H0U#7
M2@OQB,*#)=E'Y,'#3%H6<Z2 G(%\.F6$3T;A.(EN8E6+8F=><.=7/UG1J\G
MXWTFXXQ!10;B_EIQ0[%-2.^MX46<;2NS&[./(-%?(%K ))VFI$0\E<(X\)R5
MNX"30$K@H*)*@8W*4,Y@&F"U4^)UA11LI2Z-CH$R6L//I(HI_3C-?4D8D1&O
MPR=HWWG/VETNXPZ&Q:I*OI6TY3OXLM7.*6%#(%VUI14.\.9;)86=L,\98M;)
MVTN46:A#7Q5T"E[1/UT9EJI*)N0-6I!?+[5QJ592DU4^"E0E$Y0T+$Z$"8P!
M7B@LUBB*4,B.IX'M.55]K*N",( >2JGE5,*A6 D%;-M04@7.-&SS<,<N9N=C
M%AWC*CN.@N,]E(EB!^LIN"Z3)GE=(K\']LA5%8Q-I<D]6A!&ZT*!TOENQP#;
M$_:[-X2VH$YRVU0>X#0.J#T%UX$LML?; 'Q31R >!-(;P[TIT*8=5R3T![::
M3V9H> J)*";?"W%*D:.8&%WM,E;R@T\E+/F!+2X[053P,;=9"XA09A;;UI-E
MNRL1I8;T !!A8V)GLCRM4.ZB$6\#M*4E-HI]+I?S\6I^CCP:L4.D/<9LQA&7
M)H1UROYEJ21SZ *8XB]]Q\\GJ]80CS?T4ZR0/T<BEW)IZN!1+94H^R>)886(
MB)Q:=S'LDMKGX5RX3"?^<*A3Z J.$:8:TB9'R!@E^58JG(1'6*]RD1S+MQ&Q
M-I01WCK>UYG /A22HP68C_"4@3U[[M3X)I<!1CJ1-(6KK?@FG*% AK&@Y0(=
M_5LW0((H4Q^CA$"Q%0C4?#69-Y$*WC\7A@H'6<FM>AZ:XS(77?1;R,)7WS38
M3NO$4]-+]BR'U=_M&58!"0:?*HGA$%-U1RUHRS$9'09WVHK7D"X*V@^*@*C*
MTRH?"&A)8=#]7V-'K9TPCM.LT"U/)X'6B&5U42,O?I$OMY7S JBW%#:@C&*#
M3B-UXOM]@&>G"WHJ.AMBT?!>YOMP6$'09I/+-MZ4,U+)XS9*Q%"[VIQ:LK4Z
MEOW2>I%E4H.>1^M4B0$MW2*RAC'5H0,!8,VL&D225><#JXA4OVM9ZU42^JL_
ME6&P87D8KX4GO.=:0X#Z"@9!#,E"@'&K(X7$WR$+MLG" '%@>>?;H@TI[;=N
MB-.Y\,38F4?N%&A:W[?S/0'LCP9@'VGV#JC:-*@B3_J5B<ZCX[9??5OHUM_.
M0$?%$?S^72Y[F:^ !K_VW)7 %ZTY'8W6H9'#P3?CB8>.1V(*SY3\BPH;XGF2
M^#V@ASYNMX("C>5'+A4'_PQG[)P?T)D,7A&5/DK80,/V"5+H!;)77T;0)9YZ
M1!V"7'"+?A>F(H_-";LE_H(MCC\QB9E*!CEMV%[45+,J^=O73\:#$W&']KTY
MHW'0$J"T]Z?)VS!=H<A;M@GK'4$.Z^2(59Z:K&M6,>TIO:<PG/&<<E=C05<6
M@NVKMZ,[S RA'=$/FGA065XSJ'H\NYR--B'KEEJ?P"IUB?7%<O2A>,0^C1RL
MUV]&]T2\,NDPYZ=0[ZG'>]&VJ^4Y-A-(7;B D,[29V*^&,^6J]&G%L!*D&>&
M/C^01S2 >R%L.3Y?OAG=^7G=UX8*N<ID:=D"B[/1CP)7%JA!YQ%Q5FBE=P=V
M.;Y8ST:?#4]0$>9+Z%WT5'#@':<^HA]0](4+)<V;*Q?$+F:CGYK6-E^-EXOY
MZ)-W4.EB]YK&R<;%>2]J&*E\R,[8?+EFKVC!5&*(T3.,5RNL?>MYL^= .RY/
M;1CWC,#>\>KR MO?#YCBV,A TRB"CG#UV1B3-JNO4G2PHX(&F-T4A,$SI]HT
M$M5/&NA3%4G"C4\Z0D3R)]+D\]LT6F#@Y7[4N]'U6;T;*@().A]4OM6/8M+Q
M:IL?0E%[Q _+_;FCNW[:9O*%0X7.90Q**D1*+$.5'-?F<D/<XSLEKN<REF7H
M(8="F!UEL&VB_88W'!^QHI]-=I#:"6FNAKT.EJ90)HI8UHBBKS90T+<3<_&?
MK:%;8NE,HO;KP:5FH)H/CH=\PAZJ+=UZ')*H#OVO%VT,VXS+862@$&]Q'?73
M([6%NGD2C8*<<-T@5OO039AU+_P\H*>03K\ &?7 TJ/!9E %4IU,I:^)9S/K
MWY]YZID5Z.BX%>R25@J0>A3V[>CWYBD5O7X^.ML<H]&7F&B^8 ?!#7'I"5*:
MK^M=I]EI5>\ZS5+G]2YB*QK4Q^O5C!W[+C?M?5F%Y3O__9CN;G O?&1MW[:?
MJ#?ARVRW/7S?_I6C?M$HE4AQ=#9Y<QX%TFX>G"[]=UKZOJ%S_Y.^U@A#&[">
M:NV:!U+0?KB_^3]02P,$%     @ !()?5P9C+FE]"   918  !D   !X;"]W
M;W)K<VAE971S+W-H965T,3,N>&ULS5A;;]LX%G[/KR \@VX+.+[(3N*F28 T
M[6"S.S,-FG;ZL-@'6J(L3B52):DXGE^_WR$I14[M((-9+!8(8HGDN7_G0IVM
MM?EJ"R$<NZ]*9<\'A7/UZ7ALTT)4W(YT+11V<FTJ[O!J5F-;&\$S3U25XV0R
M.1Y77*K!Q9E?NS$79[IQI53BQC#;5!4WF[>BU.OSP730+GR4J\+1POCBK.8K
M<2O<Y_K&X&W<<<ED)9256C$C\O/!Y?3T[9S.^P._2;&VO6=&EBRU_DHOU]GY
M8$(*B5*DCCAP_-R)*U&6Q AJ?(L\!YU((NP_M]Q_\K;#EB6WXDJ77V3FBO/!
M8L RD?.F=!_U^N\BVG-$_%)=6O^?K</9.0ZGC76ZBL30H)(J_/+[Z(<>P6*R
MAR")!(G7.PCR6K[CCE^<&;UFADZ#&SUX4STUE).*@G+K#'8EZ-S%1V&=:5+7
M&*E6[*;DZFSLP)=VQVGD\3;P2/;P>,U^T<H5EKU7F<BVZ<?0IU,J:95ZFSS)
M\%;4(S:;#%DR269/\)MU1LX\O]FSC.0J8Q]%R9W(V"6!0CHI+/O7Y1*G@))_
M[_) $##?+8 RY]36/!7G Z2&%>9.#"Y>_# ]GKQY0OUYI_[\*>[/C-'3/.8C
M]CT;=FD9]+V3NK'EAF72IJ6V(ALRJ=@_&BQ1 )@K!'NKN<F8SMD[:9!0VEC&
M&U=H(_^ &^G$E:YJKC9_LX"G0CXC<QUS@E?,:=8 &<;QKP*)O!6+!__CE)55
M7<I\XT.$8R F.YAN#$/=X4K^P4,NQWVU@F3EQ>L[87A9,I'GPF>Z$M:2PIZX
MQB916O:2#@^^]\7@U8A=@W.622\"ZM!)J?#*RP=M6@09<;CDH$MI 4*U<9:E
MR ,!&SRVH@^'?>\P:3M?$&'>&.R:_5YYB00O@T$MJYW*LW4ATP(RT[+)!"EB
M=2DS&$W\6 WUR*KH#T2HR7G+H>>=I7!K 8^FI"$,^#RZ';%2IV%[Z"$"&Z5J
MB)"TL;P4Q+:EJ(W.H!N[_>=GG"=/B3M>-D$1P]>0[82!2ZW?3.$7K0 5RZQ(
M&P._94$K8@[X30[Q+V%7'WZ[?G<X?<W@Q4Q4,F506NHLQK/;OO&K\ ?B5U%3
M@T<0.4L<04<B(W_.T@*  8;HS39U#;QC"38(=2>-5A[!4D4<9"C&9C-BGPHD
M>#]$W @F[FL$B3)!PX?@AEK"%2&'F,+&4M#N<N.9">53B9++\^O0@=32!C64
MLO+0\7N06N=1_"-+YJ,).D!94AP!-\_)%48([TA%B5*%.BRH#C-448!Q"72U
MI70( 0&;$=T[2@+Q:KGG#1)J([AIM=V"<K#9)V[0F[QG5L+KRVL X5Y2L.$!
M:'_<ZCY$AW.%YV0$C0TD.M@9?9UKR@KVK>'&^=SH='X@L(+R7:7!>,HYO1'B
ML#WK^8W8Y6,MIIT'U_BE4"FM#E-NB^@;XET;4!@)"HB$2Z1"-4')V["UD4X<
MZCSW.]GO@$1O%VL*B /<2A2J)?*"D!\TY&F*2<1XY3*!\*8RE#+\B6^-K#W8
M'H7'%HW+]-JG[7;*XDF6$7XJ:Y..^%'!M,.=[FU-)G-]])2EHP_F]L0_S[__
M0^S^/T W&)RC(NNU+U$^R&&>11^T7D;+:0NV>ZH[U8--'>HGO'5Z\*GSR:_D
MD_Y<M<,G![==E%[PJG[#WK=Q:N>;*Q^#ZPZB7SR /P# ESU ONL#\J< K="$
M/_CN]/Y>NLCJDW:\/'AY6>E&M1F+Z0%G[:L#.D*VM#T HX502( ?V71X?#2G
MWY/A='&$A]GP9+' [X)6DV1X,IT>(*0(&+J8K]*@+75(B]F<O?AAD4R3-VS:
M/<V.8#["HE9#MD*W1_</F99A3)8TRE'3A.3I/.F(DA/V^@1KR?'Q >0.%[/)
MME:+Z3$M+*8>M</)-.DY>7\JA*:^%YCH$-Q:32X&A:]_E,K0N,!%*B5?PEDQ
MA9%75[$<HB$:/TG$KDZ)NYV9;?EZ6![&X[ZS^_"AB,(E(;I+>"J7E+O;9NT]
MB8:;?N6KV.?H I3YFF4)_!(7CZP[R0WXA<$/B63\W$"3$W>-!Y^A0F?B/@E=
M"Y]^*]4-D31<F.B:;C0@2#G?=5OM,>U@2*GYQL-CS6F,U4N?C6&H:$I2BTJQ
MU0KK&U+8IW06DGA738]N#FF,411Z1-%=X?AS\X]79IM9P>]"B]$\#G7=W/,P
M&/4FH$>#33?6;/>3_\9<\P4 $"VO@ML 2+H,Y)1/%.B5UEDP:FN00T<O<&V(
MW4[<IT)D,9ZP\_<P&&T%/TQ)C?7@0<GVD4J+:+0T5*!EF$D99EA@>DW*4:@<
M N][8N@#TGS7;T. =Z5A:?5VD.FZX_/D3_?7K7$[ZP\!!7<1@$J[ ,*Z,37=
MJT;LUS9=VRY!_6KO;."-[F4(B==J=5@".!E5%$&^)('^)-VO,"LT'FAT"96I
M:/W;&SN#UQ1]TRB[8QDB]]>G#H J. 8VBFU;VORSK55WTK;=,:<;CI<-2+0I
M%\VC>UU4V>*ZB?"#"L?0X"$UC]%^W&%30Q5$VGZ$PC(>2\F7K1TQ#9#4&8U#
M6>_F1.#T-SQRB<\Y/Q[L&$W:-&^/0^ZC"T'-Y>[I/WZ V#QCO&E'FV=-2U03
MN8VS"JZ1?%?#/CW8%A/:3MO;;TCGZ)_G3",>W%<$[FVNUSAG'ZW]'$.P^6Z$
MV=-?'YKU2SS-3Q;L57B>SOW3=+8XN-Y1TV-K;_L_D<2E5^WBP>6^_ OC0)\V
MK#R0=L.2H!'IH9'ZUZ YS1(D=!HUGDYZ]'Z<ZD:-:-WQ_'5GW3!)CEH#=WU*
M&O<^_54")84^<-*'"(0P? 7L5KMOJ)?AT^'#\? !]A=4)*DL*T4.TLGHY&C
M3/BH&5Z<KOV'Q*5V3E?^D<878>@ ]G.M7?M" KHORQ?_ 5!+ P04    "  $
M@E]7'XG4CZ$%  "F#0  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6RU
M5UMOVS84?O>O(-RAZ #-EF3'CG,QD,N*!D.+(.G6AV$/M$3+1"52(ZFXWJ_?
M=TA9E5LGZ,/VD)B4SOEXSG<N/+K8:O/9;H1P[$M5*GLYW#A7GXW'-MN(BMN1
MKH7"F[4V%7?8FF)L:R-X[I6J<IS&\6Q<<:F&RPO_[-XL+W3C2JG$O6&VJ2IN
M=M>BU-O+83+</WB0Q<;1@_'RHN:%>!3N]_K>8#?N4')9"66E5LR(]>7P*CF[
MGI*\%_A#BJWMK1EYLM+Z,VWN\LMA3 :)4F2.$#A^GL2-*$L"@AE_MYC#[DA2
M[*_WZ&^][_!EQ:VXT>4GF;O-Y?!TR'*QYDWI'O3VG6C].2&\3)?6_V?;(#O!
MB5ECG:Y:9>PKJ<(O_]+RT%,XC9]12%N%U-L=#O)6WG+'EQ=&;YDA::#1PKOJ
MM6&<5!241V?P5D+/+1_$DU"-8 \BTX62Q-3%V &87H^S%N0Z@*3/@"S8>ZW<
MQK)?52[R0_TQ#.JL2O=67:<O CZ*>L0F<<32.)V\@#?IO)QXO,DS>%=9IAOE
MI"K8O2YE)H5E?UZMK#/(BK^..1SPIL?QJ%+.;,TS<3E$*5AAGL1P^?I5,HO/
M7[!VVED[?0G]1V/R,LC)B!W!8;?2\J(PHN!^J]<]*?]K&2J=N8W GQ&"<94S
M!6Q6A1 +"C%#@)RH5L)T4?*"6*1L*PS4"*=$R=NSP4</U$\1]H$0^T\&'L/K
M=ZO!FZN*PF:95+!&-Q9GV)\']T;G3>;0$X+E/[%DFD3)R0PK-*-H'I]B-3U-
MHT428S5+IM%L=CIXT#M>NIVW5,-# ]Q,5X)-9FPR84F2L"2>#3YJQ\MOP1?I
M'GR:>/!)%*=)"SZ?3]FGC5 L[[&+7&LQ(D_GC:YJKG8LT^AH.3C*&2]+B@"]
M18B4KF3&ULA(;2P><H="A[7K-3H8DZ"AQ;,C=BTRWEB!7HHDYLAL0.WV>'U1
MQA&,M=$56TE=&YT):\FTT%J$L=XX"AC^E(8'.,X(!;G .IYRUQAR0E:D2>PU
M>&\<6C[8;!UHW7O]ZC1-YN=] R"?<;MA:\J&8 OQT!I:M\&D_(5C[_06BB9B
M!9JU"BR\# ^["Z&$X0Z,2M5YX/!8%X;7&["*D"#=X2P63<G!\"[ZRCF9".$:
MK<')#,'?!V$KW2;D'KAN,1# IL1)L"=S_SU!(W:'NRK/?;E&C#,K4;MKF 6/
M:FWV9?L")).V1TD@G-F*LD,UOFBAWR7 >4@ 5+V(OD]#6XN,3F=.DQQHZ!3_
M=R)ZO0I^[)WS_L!,W[M#B'HVK7;?A]T#'ZCW.>WYPQ5;00(]QV?2!^T$JC]B
M9&H:GS^*HJ*\>A ^#JJ(_(ODG/I(V>0A_Y QY!.)C!@F!S1.I*A488 *LTS!
M34X,Z<9T!= U"XMFZ8^>=2<?Z>3'CK[GQK&[NXC=H3FSTTZ=O96*JPQ-@CTZ
MD$E>!+H?F[HN_1X3&:,)8H^+>)-U-/J@*_[RVPAQ"YRS:UYRWR \ES>'H;CI
MZ/RX$>T=0*XZOBH%.?N$YF</^. K3(OP/Q/RB:2":1BMA#$_''A<.,BO(_?2
M&W[L$CD;'(K>XO2P2:*O=]'@T-5G#]>JW)T-VBG#]ERAZR.>X6ZB&RE)9E$Z
MG0]NO_7L33^(/,M,@V4I^4I20VKY(/UH.IW38A'-)LE@GQ4F9,4_4,H;0V37
MPDB=4W-%Q:I0/66XDYRF"UD@T0NI%#WYCNA5<)H.FD6+Q8(6DVBRB'U(V^(&
MV>;P_-"P8#-:>=&K9HRH[0Q.S%B,R]W5PH\P=C3VJWT<M#K:0Q"9'%\*T*#K
M%7T\]SUC[XF?C^WHV&PV[LW.B&7AOQ!\;U,NC-'=T^XCY"K,WE_%PQ?,>V[
MJ66E6$,U'LU/ALR$KX*P<;KVD_A*.R2.7V[P(24,">#]6J/LVPT=T'V:+?\%
M4$L#!!0    (  2"7U?V&5+J! 8  (</   9    >&PO=V]R:W-H965T<R]S
M:&5E=#$U+GAM;,57W6_;-A!_UU]!N$&1 )HM4=_.!^"D3=>';D&;K1B&/3 2
M;7&32)>DXGA__>XHV7$:)RDZ8'NQ2>J^[W>\X\E*Z;],S;DE=VTCS>FHMG8Y
MG4Q,6?.6F;%:<@E?YDJWS,)6+R9FJ3FK'%/;3&@0I).6"3DZ.W%G5_KL1'6V
M$9)?:6*ZMF5Z?<X;M3H=A:/-P4>QJ"T>3,Y.EFS!/W'[R_)*PVZRE5*)EDLC
ME"2:ST]'LW!Z'B.](_A5\)7961/TY$:IOW#SOCH=!6@0;WAI40*#OUM^P9L&
M!8$97P:9HZU*9-Q=;Z1?.M_!EQMF^(5J/HO*UJ>C?$0J/F==8S^JU8]\\"=!
M>:5JC/LEJYXV*4:D[(Q5[< ,%K1"]O_L;HC##D,>/,% !P;J[.X5.2O?,,O.
M3K1:$8W4( T7SE7'#<8)B4GY9#5\%<!GS]XI5:U$TQ F*_)>6B87XJ;A9&8,
MM^9D8D$'4D[*0=YY+X\^(:\@'Y2TM2%O9<6KA_P3L&UK(-T8>$Z?%?B)+\<D
M"GQ" QH](R_:.APY>=%+#L_ X9]MS?5CM\D;8<I&F4YS\OOLQE@-X/EC7S!Z
M7?%^75A04[-D)3\=0<48KF_YZ.SUJS -CI_Q)-YZ$C\G_3M2]ZR\_=:F8_*\
MGOO/US4G<]5 F0NY()8AC>9.E 0Z"#4I:V#F1,A^Q[1>(^TM:SI.U)PL-K+@
MMG$D$FPD;8\HCH@B@ ?+VQM(VP84Y)"UJD,53J[J#!AJCJ;>.6N8+#EAEKSA
MY< 4.B9*#DB>)'X21MZL_-()(]PE 39<-OSN7"BS-CYX6XY)&/M1DG@?.$-
MP(5DR9)KH2K"JC^A0MW)ZU<Y#</C'6YR2**8''D77=LU#.\> CB2!M=X'=WS
M'I(DIT"Y8^\>+\'@M/!I0LF;3F/4."MK--BZN'?:UN1+Q[3EVN Q>NE80Y<X
M6( D%W;5+IE<N_^&6XBI@-@Q*3L&.8:D&M.ZC"%;J639=!AX6X-=VP2MF"%2
M62) EM H UP"H<X>93A9<Z;-V('B8E!8;W@J$"_F KCP>&2U6"PX^C0B_-:I
M7M4"G!.R$B6S$!$Y*'+QV@7* "5;:\Z=P=^"F/$>&+\'VKF0PO(?&L@5.K0E
M83T)TPCH6V@,\!D1NF,3Q*8!@-@ACLW:N0X,Z/0-YQ(\_\H'>Q\:AY[LV.Q1
MNJF$'G*&#/7$JP=.],0^D=SZF#,C#"9VBXY-5>Z%UM1[?.:]T\H8,BO+'KX@
M["<8$3Z[+L<K[W"VK^:\RV<C./6N>5E+U:C%>ELQ%:2\@2&C H3#*.&'>0ZK
M0Q('?E!$Y @V<&'".H%_[PI,0;4T#H &?X]Z2?28Y%!KV##!#<W[,C.U6 (Q
M5'H8PD5!LMPO: $\89:"IIB$B7>M6063#DQ!)/.SH "RT$\35)WZ09*2L/#Z
M1G'OD"&1'] 43?"CB")I$9/8NU86BN@%',5IZM,,F4,:^33.@#V*46"!+KZ(
MQ.D#DX-@&X"=]6#)8^4'3GT!Z@\>&'#@3,C A.^#U:,;=NH].OI_0!46@1^G
MD?,7X%T4M =54OAQ%OX+4%&_@!O^D$ \D\2!*D_]*$L>@2J%ZQU!%86% U4$
MUNP%%?7S,'2@"F+H'21+LV\&51+[883VAT'HAPFR1V@B9/J_ !6HST']P0,#
M %1)Y*=@ F166_%WW_OX';PI#'=WVPMN89\Y(-DX@>&W:5SCE)C4=)QN3U#,
M;C/LF\%+4\/0%"GQ(;%FR=WSH%G[@P)*Q_%7.L-BG#^I])LFE2=TCJ$)H9S'
M'/YNEW!Q*W&44L!>*EU]78;[@@RU-.\LCK*;%O+4O/366-%B57J[V?(NAP[T
M&W;T?JY_6.UO>TU>/XS!B 1O03<"[N0!L9#Y21 C54QH 263XSK!-:4!KE-<
MAP7%=>;628'KW 4.JX6S.<PWA(:Y'Q7I@,>#[>VY;ZJ>[#R.H(H7[@EHX#:#
M$/3OI.WI]I4YZQ]7]^3]$_4#TPLA#73Z.; &XRP9$=T_^_J-54OWU+I1%JX,
MMZSAI<PU$L#WN5)VLT$%V[?WV3]02P,$%     @ !()?5ZSI#JXQ!   4@D
M !D   !X;"]W;W)K<VAE971S+W-H965T,38N>&ULM59M;]LV$/[N7W%0@Z(%
MV%@B)4M*$P-QDJ(!6BQHNO7#L ^T=+:)4*)*4G'R[W>4'27;TFP8MB_2\>6>
M>^Z-Y/'6V!NW0?1PU^C6G40;[[NCZ=15&VRD.S0=MK2R,K:1GH9V/76=15D/
M2HV>\CB>31NIVFA^/,Q=V?FQZ;U6+5Y9<'W32'N_0&VV)U$2/4Q\4>N-#Q/3
M^7$GUWB-_N?NRM)H.J+4JL'6*=."Q=5)=)H<+=*P?]CPB\*M>R)#\&1IS$T8
M7-8G41P(H<;*!P1)OUL\0ZT#$-'XOL>,1I-!\:G\@/YA\)U\64J'9T9_4[7?
MG$1%!#6N9*_]%[/]B'M_LH!7&>V&+VQW>T4:0=4[;YJ],C%H5+O[R[M]')XH
M%/$/%/A>@0^\=X8&EN?2R_FQ-5NP83>A!6%P== F<JH-2;GVEE85Z?GYF6F=
MT:J6'FM82"W;"N%Z*(=S]%+IXZDG,V'SM-I#+G:0_ >0)7PVK=\XN&AKK/^H
M/R5Z(T?^P''!7P2\QNX01,R QUR\@"=&G\6 )WZ =ZY<I8WK+<)7O/.PT*:Z
M@5]/E\Y;JI+?GG-YAY@^CQ@ZY\AULL*3B%K#H;W%:/[Z53*+W[_ -QWYIB^A
M_[L<O0CY/.'\$/[6%%RVM]AZ8Q4Z!BW-_V6B(@SEO .S K]!6!E-K:_:]=&$
M,NFQ6:(=TGF.U7Z0L$G(;4@PG[PY;4S?DKYJ2=_T3K:U>SOY(K=4^!ZMDMK!
M 22\8$69!BDM62J*R3?J_W>J?==94Z%SD+&9B&'&DD),/JA649?40(MU7Q%Z
M/F-%6D#!V2R;3;X:+S59_),O!\"3A(F<!TD4C.<Y7%DZ$JV_9W!%\?% ].#B
M>Z\Z.JO\D]5N7,5Q=1^;_S@TGX*1 RBS.$2#Q;&8+'JE:P)V-)Z)G+Y964X^
M(1U@&Z-K4 T%XA8#*=K"4U;R#)*$0I;SR:,W"7D_HY4R9;.$HMC;5GEJ' 8K
M=1<$-SAH5BM%A?+H9\'R8D9?$>>3,]-T/>4--M+66TE=%U2<6?EA(#(FLA)X
MR0JR$ K0VWYW9).7Q')M0S)%3M3*$(\L$Y.?*'H6TB2&E,?[Y'4O1E[PD,<$
M."6\+&(*!8&^?E50?M_#:57U3:^'JJ^1.J)2<F#PAB)0LCP3\);DD@>'X.T_
M,3C63TP13(J0F#(F%T0P9GLR]$G)I=+*4[&-<_K)W/]3*Q=-I\T](L$W=+.[
MG9_$3K"<YR0(P3)2/\<56DN4+%)/] A)S I* (6#4S]=MJ2/X.4=,>WDO5QJ
M!,[2=!:^6;G/$!546B;A5XQ-)I_Q]8#RR+)4D) G+.$Q/'=N3I_<<PW:]7";
MAT"1G[LK;YP='PRGNWOR<?ONM?%9VK5J'6A<D6I\F&<1V-T-OAMXTPVWYM)X
MNH,'<4./'K1A ZVOC/$/@V!@?$;-?P=02P,$%     @ !()?5[=@!)JN!@
MUA   !D   !X;"]W;W)K<VAE971S+W-H965T,3<N>&ULE5A;;]LV%'[WKR"\
M;F@!SY;E:](D0-)TV ;T@K7;'H8]T-*Q190259*JZ_WZ?8>ZV$[LK -:6:3(
M[WSG3N9J:^PGEQ%Y\377A;ON9]Z7EZ.12S+*I1N:D@I\61N;2X^AW8Q<:4FF
M85.N1W$4S4>Y5$7_YBK,O;<W5Z;R6A7TW@I7Y;FTNSO29GO='_?;B=_4)O,\
M,;JY*N6&/I#_O7QO,1IU**G*J7#*%,+2^KI_.[Z\F_+ZL. /15MW\"Y8DY4Q
MGWCP2WK=CY@0:4H\(TC\?*%7I#4#@<;G!K/?B>2-A^\M^D]!=^BRDHY>&?VG
M2GUVW5_V14IK66G_F]G^3(T^,\9+C';A*;;UVGC1%TGEO,F;S6"0JZ+^E5\;
M.QQL6$9G-L3-ACCPK@4%EO?2RYLK:[;"\FJ@\4M0->P&.56P4SYXBZ\*^_S-
M*U-\(>O52I/X0(4R5KPUGMS5R .=UXR2!NFN1HK/(%V(-Z;PF1.OBY32X_TC
ML.JHQ2VUN_A)P ]4#L4D&H@XBB=/X$TZ52<!;W(&[YY67MPKEVCC*DOBK]N5
M\Q9A\?<I96NLZ6DL3I5+5\J$KOO(!4?V"_5O?OAN/(]>/L%TVC&=/H7^OYSR
M--)R*,Z!B6@X6<R^/_\]K8A-/Q7O"O%KI7=B?,&^X*?/"/OR4A8[H9RK*!7/
M1+Q<#&>(4:U#NFTVEC;2DRBM*A)52BW*RKI*%EYX$R 8K!8V$-M,)9G 2EVE
M$,Z?*P22W5KER;H?OEO&X\5+05_))LH15HIUI;4P:R$+8<J0X\"%C"1#FO*L
M3%/%\Q#]3$S^BYW,305N -SS$L^9" N/HY?US+OUFK!G$R;'+U\,Q4<L*5 _
M2VL2HM0Q!&\[7C\0<@U-4#+2"J6HV.SUXT&*P&3Y#L13D9@\AV%!M1X;X%D4
M00W*&#60L :*LX.04NXD.W"U._0-K$H(=%F"V5>%$D;P(ARU6.Y-4=,_T%AB
MAPMQ, !#1PER!2)76L%>@5"C7B>$":Y(6O@$"I+S0N*?L&Q>K UQ)KX7)338
M8=E0_-*N4WOFCG+UHRR*2FJ0A'>E19.QD(;HDYBV",!9D%4'XXRQ22)H&'0
M!AM5%&R5HQVA?$2/M-Q">]11SX7 M/%=+YX*5ER3<X"W6@7#MV$%2UAX)Z0,
M!LPS28Q-99$00'W&IE%60,'<#<5]%?S$YO*9LJGX#%H<!2'*XDF=2ER1>!EB
M,:$'YFT"WX60 %-TA.03',^1!@+C2033-EMJ7J%?'D$=Z(TV+G)CF0X2)(X$
M*F :XD_N.L]J"=\ &'CL?^Z;)]<UR@S%K6-_DT,K'#R4R/&4'-08Q :O:#*V
M0<J,1BZX$X33O077IK(P\$D3MI,JSRE5=:2OC<:9H]W=KMAF5+36JLM#S3$G
M<)<.!I:-9X/7V(^/:85X<D<8F8255@1P(-6!V8J$<Q,Z&P31 _L]0\:,O[%2
M/3#6GH.ESQ4R#(JLNX -@=%4B +K.ZOO^7$Q#Z'\&)LS#[EY@-7(<^2]AB 9
M[(2N[2E?0;NV==>Y=[BMUG1OY$.I$M1PSH&6115@,.<R..AAW3F=&$UG.51O
M*.XHD96CAQHUZ<]9"R*FH%!)6C'(>6,]XMW3<<-+D!Y.K573I1(4JAT'V1>I
MJY.& \4*Q0P>TTJNE$; 4*AKI[5!5RBXT'#V&:W2$(XKJ8.%PDG/<1*=,S1W
MHM.<6ND[-ED)?4_&D J,Z]QQE[UC,?>4-(/QH/?\-J\[5G"CJ1Q"Q+WH?>NY
MXK+W_F%$AT/$8#I9M&^+J/=[@8_ ^0=62/D(UT5+8AR$/Q?CP70Y%B_P%@^6
MLYEXT7M[:(,#[-G@8C8/;]/!'!WD8Z@J795H&I$/99)+N?'@UG6UIMLB,A*S
M*0*AMB,_.M!<]CYFENCH3"S>XG1V---CM[$Q8M&]G3,K[!E.J]4I2E!I?A%:
M>X3G,EJ&YT7OMC:=;&OM*0-.9Q?X/X,9)XL)/^=1[V/0_)E8Q,OPG#'V8 PS
MA]_Y1>\USB#A1K4GTS;\<[$V'G*O>OR\/17,H=X<AELPSN#;4FZ+"&8OSX'?
M%=*B/J1.A_-V;L"5J*S5T#C(<.H K#J,N.985I]R0A>2:.]/"YY&L^'D@>#I
M+-Z3.19<Y^U_XJ;$S0@AE(9[:-I6D-RP[6$I/EBC2U-]U67;GRA&WVYK,3QU
ME1D=W#5SLIMPH^:R!2/5U\YNMKNTW]9WU?WR^L;_1EH<V9S0M,;6:+B8]86M
M;]'UP)LRW%Q7QN,>'%XS@H*6%^#[VD"G9L "NC]EW/P+4$L#!!0    (  2"
M7U<6I4@B>0D  'D:   9    >&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;-U9
M6V_;1AI]UZ\8J-TV!FB*I'B1$MN DR:[QB+=($Y:+!;[,")'TFQ)CD(.I:B_
M?L\W0U*4+3E!4^S#OMCD\+M?#\6KG:I^J]=":/:YR,OZ>KS6>O-\,JG3M2AX
M[:J-*/%DJ:J":]Q6JTF]J03/#%.13P+/BR<%E^7XYLJ<O:MNKE2C<UF*=Q6K
MFZ+@U?ZER-7N>NR/NX/W<K76=#"YN=KPE;@7^N/F786[22\EDX4H:ZE*5HGE
M]?C6?_XR)'I#\(L4NWIPS<B3A5*_T<U==CWVR""1BU23!(Y_6_%*Y#D)@AF?
M6IGC7B4Q#J\[Z6^,[_!EP6OQ2N6_RDROK\>S,<O$DC>Y?J]V?Q.M/Q')2U5>
MF[]L9VD#:$R;6JNB9<9](4O[GW]NXS!@F'EG&(*6(3!V6T7&RI^XYC=7E=JQ
MBJ@AC2Z,JX8;QLF2DG*O*SR5X-,W]UJEOZU5GHFJ_I&]_M1(O;^::$BFYY.T
ME?+22@G.2)FSMZK4ZYJ]+C.1'?-/8%%O5M"9]3)X4N"]V+ALZCDL\(+I$_*F
MO9M3(V]Z1IYUC/WK=E'K"I7P[U,^6A'A:1'4'<_K#4_%]1CE7XMJ*\8W/WSG
MQ]Z+)PP,>P/#IZ1_=1Z>E'+:QKG+AM)_^&X6^,F+5H=]Q/ZQL3U29NRN3$5)
MK<+>Y;RLV4>DM&)Z+=@K56QXN6\%U"C/J@(I<N3/OB2'/2,)Q!IX+PP#G9I[
M_\6%8^273;& *K5D]9K#?+HZJ5<5!9341J-><\UVHA*L=3@SVOF6RYPO<L$P
MN)BLZX;#'ERPP$F2F>-Y'G/8)F_JLZK/J#DCN3D;)F1B*Q44"1OQ#87591]
M>D:9D97O9;F"+WO&=[S*ZH&&/G[&U9/R$6^U$B"N;&S;R)N4=E&W3L$"\F0I
MI!:9PU+R)D<4X9PB_IVL!=.BPO#AH&#/S"GQEFRQ9^*SJ%*07) S><X6B%"&
M(8!926%31OO!3^O@%V/8>^BR6\TP#;0P">I&@L-\)_%"QP=9*_Q$<I:-;G"X
MJGBI3\:O[0QV!PM@,O&\YE6)Y<7>\7U!Q7U7LK=\WRH=I-=8#9XP<.+ 'W@H
M]<,*522X@.Y:H&60HK83B?IV*[7,!!'57,MZN3=*4HQ3I)\,P&4-BHJ;SE*+
M7*[LI:@U/)68_=G M]M5)82QG&K#% G4O!75"@1T]%Y@A?-2_FZEF+X<=V;T
MW.,+MEO+='WD,LX1Y(S)$N9R5#:O=->D/$7UU=(:>?!+EH/L(8@^0BX$^UEI
MP4('B@]L]=@!>9HWF5&!#$#ZW9W#[L#.9FS\!A58II+GR!I*D<RLC4OWS6:3
MFWL\HS4XIGBJIF*TN9GO7?[=,<E%91I5().E133&WO(I%TC#4SDY:N5*F,$+
MFLAC?^F"(]JB.LXEG5I7B>:-K&K=E]\_\9 ]0XR!,.2 ZE&B+MH:OGP);)*9
M5 $R605DUU+E %XT2K3IB]:\VA;GY<)PI4,N\9FN1:?Q\?1%K966JZQ5+C,S
M%NI#2NPX@Z(U@;<M2<*]>#[ZL(;11U"!_0SGCDY&U&E4*0'KKT;/;@O5D&AC
M$V8=<E)?C%ZIVM3?IE)9DVH$?RO*1K#OV70^Q=_8]_#7=R(O-O]G83)Z#_=Y
MA<*FM&9@R-7&M$N"C1!-0^P';QZ!>!Y%HWN@183.8<@ZLI;;U9)A%$K"$6:[
M14XP Z?C09D?0=><^8D31,'H@Z)Z/!MGV.=,$V.GXT<A63C'0".3 ]_QHG T
MW*DU)M&A8BNQPDZ@K*K- =W2]*<R-QN- EO8P H3ZL=3=# V[*['>K3H7/Y.
M$YP@^_/1O:WL7PW Q7%W<8DB7)$A6HPZ&U&Z*(326(;=\I-(6XV^8W,:>W-G
M'D?P,?'=)!S]E68SA,:QX\5SBD$R=;W9Z'6[5K!O6! XLR1@%_0T<A'8-]VZ
MFJ!6)2;2Q&ZMW)*;Y6ZHYW,W\<\9=R(><>0[?AR =39U8Z_G;)><::#3G-,$
M"VD6F*)SPWCT"Z9S"T6HGU*ZP4S:XOB,A&?^!8NGB1.;DH!^[*C(-3?1U$%8
M#,5[T3?P,6[96H6JM9B;-CRAY@3D:<H'S(\M/B?-EG4[/P]R!H'N#3KI-,_^
MTQ@6*ELPRX*W=Y1@6M[H,KM79QBG9H9;-+1J"P<FEJJ\1(;2QO1C3CW-1+')
MU5X(NR"F9WG/\MFISKL*IYU728RSE&UYWO33T0Y5OE!;<9C]-L#:M#^.+C7_
M_(C?[-U,+I?8J(1]%D+OA+!"TUS5%+M-)?&DW2%'F$*5)T$1T>4<"5LT$"!J
MK ]@EU: 7LLJ8Y\:K%6;=\N#"^JKN>OY;$,@A=J]7WH=O#O8(CB&IRPO\?02
M!HE]F^(63NY4DV=LS;?DDJ!)E0I)J'QAD4T[KSH(M.9H$L#&!\>B;W_PR*JO
MHI-^?RE5/>Q4Q^T,Z1GP&*W&KQV8%!8SQW9H":P9-\1+.79$^\[S/9N[L^[$
MH3<2:B2XG^^MD;MNB"(^%5^UV)31"F5+#D=[BSM;NUK]1DMG&"5>:V,2NW'(
M'IIGE\W'DO"K 0Y'YG0O)O046R+E>=KDIE>;NK/K9-D^^?+6#@[C/NB-KS90
M'>1$^:@5P*JH>UQ"L;9]O)-ZS>BE#_K:#4L3R(R=;;O8NH;N#:B$17FBXZ2J
ME\I,,<YHK5.*+NG5FL:;K+_&((@PR[GL#6E-[.WH#&N5'0U.X)<%7\B<]K=I
M(G-X$,D*@8I.R>'V#2M=2XRKS#T#"@[9ZH&!T^+Y%F'7QX@!I4 :+) [9-J\
M7@[L&#QS_@=(X]8VR>ACMUA.0HH(5][4X*<P<*-D=$NA![6?1$Z81 94A.ZL
M7\K/"&0XB1]:D.#/T!H#3#'$$MB\\Z %$\G<C:9'MISP,TQF "M&YVSFAOX?
M! *A[SMQ:%!K-'63^5?M_J/,_9']/Q3P9V* (\/^SW# @]G8>O^M>R5PIP\6
M2^@==LVW;9:AN7_2=K']U5KJSWTWBA[ME]LS]6-0"Q)L)<6QZ_6>TPHQ(*HI
M^['[X"4JI5? 2MA5A#P>:IEFR=$LICC1ZB(.>5S@"\$&"LS,YH\C6@GZRD%Q
M.K]#@*K<V8SM\8[Y8'%8??3[HQ_%3CSS'^-NBM\P.UWK]4ND%)\U6U*5&@7,
M9:=^>IX,/@<4],,/??0@Q_$*;;\,]*?]=Y5;^SGA0&X_RKSEU0K5CJ98@M5S
MDVC,*ONAP]YHM3$?%Q9*:U68R[7@F/5$@.=+I71W0PKZKTTW_P502P,$%
M  @ !()?5^QBK-9U!P  _1$  !D   !X;"]W;W)K<VAE971S+W-H965T,3DN
M>&ULK5C;<MPV$OT5U&0KNZD:S4U2K%B7*EF.+:><K,K:. ];^P""S2%BD&
M<$:S7[^G 9+#D675.I47B02!OIX^W9B+K76??$D4Q$-E:G\Y*4-H7L[G7I54
M23^S#=7X4EA7R8!7MY[[QI',XZ'*S%>+Q??S2NIZ<G41U^[<U85M@]$UW3GA
MVZJ2;O>*C-U>3I:3?N&#7I>!%^97%XU<TSV%7YL[A[?Y("77%=5>VUHX*BXG
MU\N7KTYX?]SP4=/6CYX%>Y)9^XE?WN67DP4;1(948 D2_S9T0\:P()CQ1R=S
M,JCD@^/G7OJ;Z#M\R:2G&VM^TWDH+R=G$Y%3(5L3/MCM+77^G+(\98V/?\4V
M[3U=381J?;!5=Q@65+I._^5#%X?1@;/%%PZLN@.K:'=2%*U\+8.\NG!V*QSO
MAC1^B*[&TS!.UYR4^^#P5>-<N+JQ5:4#HAR\D'4N;FP==+VF6FGR%_, %;QQ
MKCIQKY*XU1?$_2!^AH#2BQ_KG/+#\W.8-MBWZNU[M7I6X#TU,W&\F(K58G7\
MC+SCP=_C*._XS_@K7FNOC/6M(_'OZ\P'!]#\YZDH)"4G3ROA0GKI&ZGH<H)*
M\>0V-+GZ]IOE]XOS9UPX&5PX>4[ZUZ?L>7'+Q4P\'Q4@WLC,.AGKZ'KMB-+6
M?Y7$1QM9[X31"J6*W8I< !F(0*JLK;%K%A%*&81T-!76 ;X[D>%1U\JZAN52
MCI=@A8;0X=Q.M  1"(0VY*01<J^8;93&6U%*+[!"KI?0;U9P4RL\</RE4^7X
M>+3&T1^M1J+#R D(**!T\&$XW#C[.WC$S\1;JEF!V4WCR<[ML?0O"&[@M:SK
M%C8Q60:J9:U(%$3)'V=WT@0.%H(,?7FK@O#2Q 5LE,,B.YT1U8)\D)G1J/Y<
MM!X)BSK'@9^)#X/_T)$C.L8V;*>@AR8E3'IOE8Y)V.I0/N72%@$6&K2-2&M.
M165;7D=32"I+;(T::J!+5(D#B#E H((#51D2V9=QW(B'U4R\J\5/+4ZL%LNS
MZ4'$/*F6LRKKO2')OE_D1J^MN',VD*Z]>%MEM^(?WWYSMEHMSM/'^+(\_VXP
MD!Z4080V))0]&D?!%J("@>O&P/ZB &@"8WD-$Y-[VU(C>&/+2FOP3:%DR"%N
M1O\W%8;C!H"(CZM">R2[;@OP2.LX0>RZ;YO&[/IT%=KY: =>//6ZI^*7M^^/
MWD$*$@[J>'%R+J9[-TR$U%WKK-&!Q'M=D+A'L0(H.(J8_8C&(#/$5\W8U&A,
M'Z/^6!^E*9RT;&HCM>O-ZCS@/<L7YUZ4\.ZH(1?G ,9C,C2E9"PQ[I9KZ2R\
M^9T"$TELG,"LS _*V\>J977:B9^P%>_7IXL^M>*:"U /U7 8VEC_7J]K!HDP
MMEX? 9U5%]W'H!E"Q3D=A99=L## B08ZP7J,[CS7G%%^? R)2!U,8#+?I/IU
MMGHR8!U,U9@\(^#W!8$:6!RBGLWI#OI6(9F^:,$U,86&.#Z?XY<KY-!,$:1;
M4^A3>7_]X?[HQGX\6@G?Z$_$\>3X3AE#&8DV:(!XR(5H -4"Y!E1#04;J13*
M>E_N-__\^.[UT?('  8E7FD5N=RT.6M$T-V:'S827,$LD; ]-@.\C_!NM&L?
MU0M3&ZQ31'E/1QXLSN+:)D;GL)Q""=AV3D?'(6L<'E[;X'P^.,,[')E(=T/8
M5(DLRF#73C;E+J%NVI5^+&'W*08_VXVS]7DVEW]!-D5ML?!Y2F,'S7/8%DE[
M#7RODU?:^_8)'F]N0:*8GGGLA2E!9S;77;-YHXZ*-@[6'1:^EK>&L#]%5+>Z
MN9V."2H)[T+!HH9R'#=U]!A685VTN,O5X[+BH2S0.O)?ZA&I>\('P%/1DX=Z
M)T7&;1(1//2VDCEU_7?'?;J;$FQO,4SYFUC,SC" &Q/O$M#(*R?#RF$G_'\;
M("@=^6PH7DUXI. /@P%1[?%L^4CM<G;ZF=JO:KN'2F?B/8!DF'2Y[)!>+]Y$
M4L/EBX/ _Z<]-]1,_QBO;.M\S!&/;+@B)G[SA_@'2'R;\>#$<I!OW2$6M0:N
M3E!41NK*IYJ,V+*@D,;8'76%FN3VF4,N^2:G.B WDED;UA4,TX@D.+37I,".
M&77#3BH$C$':N[:)*(.VSJ5!P=Z;&6XSCE".;MKQAL>L$!.32OA!F!B[9A0[
MAG&N4;T*>^/@AS%&JS ="*H+S]^]V/"U=6C]?52XO:A2PIT^ZD4;(M!]-W,.
M[K%(\$<:.Q.I<3,CJ&U1#R8_!/HP\R6ST^SIF;Q;!RL/-SL"3:/EQ<%SHWV/
M-]5?#@*Z;B2C;8EA5 ?.=V9#G)8S#*:[CK1@L,S08L)N/[KV*H>@I)&RKWH6
MW.?.D?3H%BP/ Z_F(1267M?LH=R@LV:8W6P;D)*8SW@;B?ZE@ *[A>A'URE#
MU^0P)&*!VS@QDJDH&*:V?I2A/1CXYL)@!RVC\>MTM6 XS)ZZT\U'5W)NB/&'
M!YX:X62ZG0^KPV\;U^E*O]^>?ACY67(_Y9P5.+J8O3B=I%FS?PFVB1=\Q#[8
M*CZ6&+7(\09\+RS8KWMA!<,O/E?_ U!+ P04    "  $@E]7GQ"U",@#  !;
M"   &0   'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6R=5MMNVS@0_96!NBT:
MP)!LV4[2U#:0I%ML'HH-DEX>%OM 2R.+&XK4DE2<_/T>4K;C%(D+[(-M7F;.
MG+EPQK.UL7>N9O;TT"CMYDGM?7N69:ZHN1$N-2UKW%3&-L)C:U>9:RV+,BHU
M*LN'P^.L$5(GBUD\N[:+F>F\DIJO+;FN:81]O&!EUO-DE&P/;N2J]N$@6\Q:
ML>);]M_::XM=MD,I9</:2:/)<C5/SD=G%Y,@'P6^2UZ[O34%3Y;&W(7-53E/
MAH$0*RY\0!#XN>=+5BH @<:_&\QD9S(H[J^WZ)^C[_!E*1Q?&O5#EKZ>)Z<)
ME5R)3OD;L_Z#-_Y, UYAE(O?M.YEQ^.$BLYYTVR4P:"1NO\5#YLX["F<#E]1
MR#<*>>3=&XHL/PDO%C-KUF2#--#"(KH:M4%.ZI"46V]Q*Z'G%U>Z, W35_'
M;I9Y((;SK-AH7_3:^2O:'^B+T;YV]+LNN7RNGX')CDZ^I7.1'P2\Y3:E\7!
M^3 ?'\ ;[]P;1[SQ+]VC3](5RKC.,OUUOG3>HB#^?LGE'G'R,F)X)&>N%07/
M$[P"Q_:>D\6[-Z/CX<<#?"<[OI-#Z+],QT'ME[F-1BGMPQ*JF7S-^%AF$KHD
M#1QJ^DQRR"0A#YZ;)=M=,@91Y](TK="/>(Z%L4%0:)(]N$>,EZRYDIY,1;_1
M>SI.IW2$JE4J/D#]LWAKS;V,SSLJ3-/3K?  %ES+\<FJQY2^/ME^]^8T'YU\
M!-.JZ@4BEA6>J?I?KM%:.+"='J<YO3V*:J?ID-[2<Q8#*@(#"PQO:#1)/T D
M"(].T@F66^.(3% SNI1Z12U;:4H'M^-EBYVE1Q8VI3\UG7<KO'$:'4<F>1_D
M;UKZ0-3#I< :A1ILXN9*5TK$;G;#9=?WM?,BQCNHT_OD%8GD:$#K6A;U@ 2B
ML2(#N$ 7%-V 9-,J1JOUC@2-IL$OY=EJ$<.+MB.;KHEA!MQ*F:50),I_0!W$
M*JF%+B2.7& <8+9)!J^"K<=L("7L*L:F-382A%G8@BE^**3C+;K&($+7*^X0
M^[:S18V6ZV*8'=^SA94@"'R8 3D7<H$Z:@S27RA&@:$&[>HQJH3$/I7)DE=2
MZY 4\ F)3^D'$]\+U8EMA'<EZ0+Y0S&/U67V:K@6J&_T9@0N!*.W&UPRG87C
MVADE2_$\8JUQ,B*B*% T&"71+F;N)D@IO=15LKV&W\#;.-8<C'3:][U_=[J;
MG.?]P'@2[\?N%^1%PEO%%52'Z<DT(=N/LG[C31O'Q])X#*.XK#']V08!W%<&
MH=]L@H'=_XG%?U!+ P04    "  $@E]7%J@M)^H(   U&@  &0   'AL+W=O
M<FMS:&5E=',O<VAE970R,2YX;6S-6=MNVT@2?==7-#2#V02@)=XDRE? <3S8
M## 98YS,/"SVH46VI-Z0;(7=M.SY^CW535*4+2MV,%CL@TV*ZJ[+J:I3U=39
M1E5?]$H(P^Z+O-3GPY4QZY/Q6*<K47 ]4FM1XIN%J@IN\+%:CO6Z$CRSFXI\
M'/K^=%QP60XOSNRSF^KB3-4FEZ6XJ9BNBX)7#^]$KC;GPV#8/OA=+E>&'HPO
MSM9\*6Z%^;R^J?!IW$G)9"%*+57)*K$X'UX&)^]B6F\7_"'%1O?N&7DR5^H+
M??B0G0]],DCD(C4D@>-R)ZY$GI,@F/&UD3GL5-+&_GTK_6?K.WR9<RVN5/ZG
MS,SJ?#@;LDPL>)V;W]7FGZ+Q9T+R4I5K^Y]MW-HH&;*TUD85S6984,C27?E]
M@T-OP\Q_9D/8; BMW4Z1M?(]-_SBK%(;5M%J2*,;ZZK=#>-D24&Y-16^E=AG
M+JYY5<IRJ=F-J-CMBE?B;&P@E[X=IXV,=TY&^(R,8_:K*LU*L^LR$]GN_C'L
MZ8P*6Z/>A0<%WHKUB$6^QT(_C [(BSHG(RLO>K&3'GO'M4S9OR[GVE1(C7_O
M<]M)C?=+I7(YT6N>BO,AZD&+ZDX,+W[Z(9CZIP=LCCN;XT/27QB8@S+V6QB$
M(_94.+M$B:6J3&4NN:T7M:!T!T:\S%@F\]J(C&ULEN.&WXD*1<LT;=8,Y:X-
M%D(HDYIQS18J1\'KD\&G527$3H:PC[!SY\F  DW1#EEW-WAS6:BZ-)K)DIF5
MJC7D:X^)^U2L#5O#<JN<9<C[MX./=0&+C*I.!A_!9;),52'8CRR8>4$2XB;V
MO=B?X&::>/Z4;H(H\<+('UPO%N (<MBZ"99@6J1U)8T4<. *6I:"G-(J!3@$
M@S0K!K0 @I'S'#:(.>E$+L$,V.RQ4EB)AM^SGWZ8A4%X^N0:S9*MV0"LZF 6
M;7RV7MI-P:F5VSC'[[C,.:DW"M84!:(&PDB_K%2>B0H6+PSVFY5@XI"+WT9I
M&B2#]Z)4(" '\9_/Y$&M\0SQ@C5KJ$$V].Q]ZHQ+L,G$2Z93NL3',[I,9_82
M1^'>V%A5)X/?UI2GVN:G=9O5I42ZQ-$QK(]8/,5U&@VN>G&Z%:4$SA^5@;%)
M-&&!%T0!2Y(I[B9^,'C?:MDB5F.[)E]AO^V"92IV%!ZQD/ZV>]<07QK)\RXJ
M#ATH2V+\G_FD+HPG+/2"Z;0/[4O3@&?_J?6ABGQE)%J5DZEW'/MLDGB1']M/
M442?)L>SP?43<TX&CD9_9/X(Z^B2T"48A3XNX2B>.50@V:X)W9K K@EF=@W"
MA09KT]18KJ" ED01A:,(84D#3<&(8@[5;6?P<!<@7>/69]H8A93*Q\TC#ZRF
MU\*V_OS!LQ4)/5< A9</UOGD5.\4#Q %+F"9O":UBTH5=D_*\[3..VYL ;N^
MN65SD7+@[2KM7E2IQ(=U)5-B1J?1B59-REH52PQ1KCXY)%9,?*V1,2AE6M]&
MTTIIA>QF$WEK!>$KC#*J(N2,/&H+9>3<!+LTSB^^!^708T$0]B"U&X/XV MF
MR3,H6ZM CUJ"AB@U=\WZ4+)?ZOP!TH-CKQ\/M Y=VU0)9\EH@GDGS^WHM@16
M2X!%<*!%K8$3M\VA189$N:H>L4LD:*7N)+DS?W >BZKH0B'A:&EJF%CCKLH?
MJ#AVA7BDB-!2[%=>I2L6MU@XTM=-$NSNPI=UGK$58H>4$ B4,"9ORI#KE==U
MRQ=D(;1S>C(G7B!U-LIJX3%N]NYN!]T1^ZU\;/4&>5D:&PM9-AEV2^T> :_7
MZUQ0TP*H'SIHVESI8[)920B5527N5(J^\^!T0BA$.E^;-#V 4:T)[EW7L(KP
M<4S^8H@\I[.-'C*=W?&\%GN4-@&P"BC/:(;0NF\HYJ-"U@6M=!9\.X\. W@@
MMW8R_E5HSG.Y=) ]C0^9_DI8_[$+Z(A]6F%X*P0'1?6-W* .^R;][5!_ZBGC
M&5@2*%S>?J;L]8_0+%TSIM;Z"R]K'![1/FUJC]AGPKF_^#&C@)N^UK)RN((G
M"62[)'O:ZK=XNW&A-R,A S@"+=,.6UH\E(NC9H/(<# 3&%2SME*V0&:]!M_L
MI+[1;RD;RQU@-VH[+MD495196S;&KI9^P9'%T[0"[62.=19UCF3JK&KY8BZ6
MLJ3^W5J +BY5-F(WSU!='T82;L%9*>I'KZCW+??MI[5FA]DHFP:ND7FN[3X*
M-GMCL:0^8 XGS-MON-/ C&G!BY/8B\.NN=FSQDL"YMETZ.I;+GJ(NS08@1KF
M&LD'1MACSW8X/TPD-%P48EL"_[_\X=F5-G+.UTD3-RC;\ IUH<K\H9F2+"NT
M5& )9BZZAFG/5RTYN IW(!\]!MD9V40%L7AT2M@%:X-S*<^UVJ&$9M*C@0)5
M_]=VP+-'.A2;G?=3I8T;?:1MI-J@%IISH:.%YASVF$*LF&Z(++OC7H-D9^]C
M/F@#Y*IT?SWL22I-F>BFG,9,53ZUAX H!9[90_^RE'_1I&LU<M,1P^Y4OC,F
M.K51L*^XNM'Y"5+PF<;_N!OLWFQ/R6_W@-3C)CL39VY^IAW/$KZ-AG!L9=NW
MMA.WW7+%PBFF6IHF0O]TSULA^PU.0[9PW6O#P#^*)T<Q$(85F: )@(;F+G8O
M?"E"@3% .^=-A3XJ3?=*E8)%)\I^P,IFJDU359$H&K"_U81M?)79\EQ#:\^<
M81Z?"CTVKU_0(W>Z.:GLC?R'%>X]BKK)T"8<L- U$MWUC)9./_4-D@AWNF?^
MMX;0>UH+IO,!ME>"JG@NS(9:Y-[1L@:5EFWV;V-I37#',"K_)^[WSF>[!XAF
M=+1SNZ.>%BSD=5T1L1B7"?3&#.'%>880L#ECZ7*[M52-Y\0,;9U@3R7LBXGN
M5+3G./2]9^O7A?^%F=:]T2"GDFCB!1._?ZY,DJD71?M/[]_I2OB_<(5>(_G>
M)-IQAMXH^5X2[#\FC]B^M\3CWJM\L.#2_F!A3Y:E<6_UNZ?=;R*7[J> [7+W
M@PHX&A.?9KE88*L_2B9#5KD?*=P'H];VAX&Y,D85]G8%$A(5+<#W"X4,:CZ0
M@NZ7HHO_ E!+ P04    "  $@E]7V+@C]% #  ":!P  &0   'AL+W=O<FMS
M:&5E=',O<VAE970R,BYX;6R556UOVS80_BL'=2M:()!L.6G3U#:0>!TV( 6"
MN%L_#/M 22>+*$6JY"F*__V.I*QZ@VNL7R2^W//<<T?><3D8^\4UB 3/K=)N
ME31$W4V6N;+!5KC4=*AYIS:V%<13N\M<9U%4 =2J+)_-WF2MD#I9+\/:@UTO
M34]*:GRPX/JV%79_A\H,JV2>'!8>Y:XAOY"MEYW8X1;IC^[!\BR;6"K9HG;2
M:+!8KY+;^<W=I;</!G]*'-S1&'PDA3%?_.3W:I7,O"!46))G$/Q[P@TJY8E8
MQM>1,YE<>N#Q^,#^:XB=8RF$PXU1GV5%S2JY3J#"6O2*'LWP&X[Q7'F^TB@7
MOC!$VP4;E[TCTXY@5M!*'?_B><S#$>!Z]AU /@+RH#LZ"BI_$2362VL&L-Z:
MV?P@A!K0+$YJ?RA;LKPK&4?K1U2"L(('86D/GZS03H1\N65&S.^MLG+DNHM<
M^7>XWL%'HZEQ\$%76/T;G[&N25Q^$'>7GR7<8I?"8G8!^2Q?G.%;3,$N M_B
MAX.%OVX+1Y9G?Y^*.])>GJ;U=7/C.E'B*N'"<&B?,%F_?#%_,WM_1O3E)/KR
M'/L/GM!YKODBA3-)V* EKF.H12F5)(D.%/*5KZ#8@^E]+1=.5I*K]P*V'1>6
M[5NXES5N2XFZ9/O[^PV\2@Y[R6L0%L$,.G)0@_!HV&L*'ZI*<7_1#'^2>L="
M^++#*V^1A''R.H5;!Z8&O@:$;8%VN@MP$:@B)K+ON"41FU##G%?PLP=ZFXUI
M.Z'W+U]<Y_.W[YFO)T="5]ZG:UB=2^%3@]P+C,6+8PB4G!-9H75'SLA @2"X
M'\4L=CZ+@2&F"D1K>DV.-V3EK;]!.RN-/2QU?:%DR2)KM%[*P I X\Z0#+Q\
M"NQ>C[UKD-0$F"B_]M+)L.@S,^8Y"CCHEKKLK642BYH G[F!LS R))1W]1/,
MTCGW$J5"6]156,FG%4Z)I^5FJ?; 60$497-()S46$=I8Y^CK_-3Q>%(>Y%.:
M8M1N3)(+!J=ELA\OYVJ2\U\%FN_T_Q>0GJK [*A?MFAWX55PG' ^N=@ZI]7I
MX;F-_?:;>7RU/@J[D]K72<W06?KV*@$;7X(X(=.%[EL8XEX>A@T_GFB] >_7
MQM!AXAU,S_'Z'U!+ P04    "  $@E]7'J[@!54&  "D#P  &0   'AL+W=O
M<FMS:&5E=',O<VAE970R,RYX;6R55TU3W#@0O?,K5$YM/JIFYXM)0@A012:D
M-H<$"I+-86L/&KL]UF)+CB0S\._WM>0Q'AAFLP<&6U9WOVZ]?I*.5L9>NX+(
MB]NJU.XX*;RO#T<CEQ9423<T-6E\R8VMI,>K78Y<;4EFP:@J1]/Q^,VHDDHG
M)T=A[,*>')G&ETK3A16NJ2II[SY0:5;'R219#URJ9>%Y8'1R5,LE79'_7E]8
MO(TZ+YFJ2#MEM+"4'R>GD\,/,YX?)ORI:.5ZSX(S61ASS2^?L^-DS("HI-2S
M!XE_-S2GLF1'@/&S]9ET(=FP_[SV_BGDCEP6TM'<E#]4YHOCY" 1&>6R*?VE
M6?U!;3ZOV5]J2A=^Q2K.G;Y+1-HX;ZK6& @JI>-_>=O6H6=P,'["8-H:3 /N
M&"B@_"B]/#FR9B4LSX8W?@BI!FN 4YH7Y<I;?%6P\R=7M$2)O;BDVEBO]/)H
MY.&6/X[2UL6'Z&+ZA(MWXHO1OG#B3&>4;=J/ *?#-%UC^C#=Z?"*ZJ'8'P_$
M=#S=W^%OO\MQ/_C;_]4<Q5^G"^<M&/'WMG2CM]EV;]PEAZZ6*1TG: -']H:2
MD^?/)F_&[W=@G7589[N\_]IZ['8QF0W%XY3/:[(R/+GXS0EI2:2FJHT.KR87
M4@L\DJVM<B1\(3W>EVA.H;18- Z1G(N=I+PB)Z *8E6HM!"9<JDE3R)76NI4
MR1(V432X^Q3,;J0JY:(DA,G0T,NFE+:\P],->HTRL;A#2$ J%.7"='@S2E70
M@$I>DQ4OD_GYQR_)*X;$GS*>4Z#*W@A9EB:5 (&%,8U-@9!C2><8-SP&0#JE
MH3AOK)B'2&>WE#:L#>(\SU4:0YR=(T(AG5@0 7V&LJA<$?L*(!G#4'SC)U10
MZCO!23BAN) 1NM%N$#"[+@7':4O["Y"!$F6/_NX+#]^:>J5IES)8\!<;ECO4
MN/W4)@JT@FYDV2"2>V*)6"/!!^U,J3+,RUCNE!N*4T1F>!"Z04C>TL]&64RX
M=[1&TG>8@DX+$,(T@(?5"HO;]X\7%-9M.O+X5*T)Z7L%9H:5AF<79$GI6/[<
MH( K+D;,&R7@KF3[GO'S9P?3R=OW&#,>04 YT@TQXY9DEE;6X##W@Q0O6>.Y
MFL$\K$TH3L02%9GLJ\.];X4EVI ^\17+M#&R!RE#-@MPBO5LXVV/U8TE;BJZ
MI[W+>V#K4.Y%'^,:D#O<^XJE+L0IIJA4BMD[\9N83?EGUC[MG3467!'[/+#_
MFG_>\,\!/IU>G,Y'YTC)BLE;# ( ?L;MS]ZWC3)-QOSA\>_<H)6T;\G.-9J#
M%0JRH]QU(.656FKT#9C@Q7R=D/C4XQ]TN*G:Y8+<N&;Q#S;LC85'E[B>G_11
MU#1&M1P5TH73A8*N,-64\V&"=$7 $QZ8O>@%#LH-:J]IW3)I8Z.N!=5(4S#7
M<\^F! -,&8H+%&P;KY2^(>=#"]3@=WHW>!2K[>NMX2RU'BAT2KZU0"N%]2YP
MS.@2#BH0';=#=%L;U\ =2PMJQZJ@G&MH$/]!W((;SH%N4Q"R9??WX14:"AT
M:Y@M2K6,!7X5W/L[$ G3[O&PI)>J4H ,B?";Y(Z49L./*%X<G831Z6!C;0N9
M"6UZY6.5<P:Y<RD"5 @*SE::X192+X.&A,T;JV?J2()N2&!#,H'6:[."LB7+
M@[26K4.,X29U'W(HA(6*U(&)9AL3>MGSC*Y9^655F&HCR;@)]#GL0 F@^%$H
MW@Y%>XX(VRD;UL;SAH/U7X$A]+O)\[ ];\?!9V^//\H>UM:AMC[X@#_!7GB\
M#Z1S"=PLRN" B=7$4;17DTW/[4[JUKMXQ[ZXQ:S[DC>OKC)MJ_2XS?*O>')0
M<G!V%0!WLI-;U+%76=:'3MY1]PEK$"I68:4?;!8O'BK]NK(^J#834[-85U&L
M*<CW$PQFT@[%U^TT6,B2SQ,1JQ1,&2YM!_M_ P8E,]H:2F[ML>&&QNZ Z.ZA
M<#OLQK(U/I_:S)TLHV3YQZT-R:O:4N HL[->N!]BI]?A)!3:[0)[50FN#_@0
M>H9KC5R(SSH=AA,J0 W:<R9S9#(=\IX%U!SFO^K6AAQN.YV/>C<GK-8RW ]9
M3N D7J*ZT>X*>AIO7O?3X_WUB[30&:@"Y3 =#]^^3M YX4X87[RIPSUL83RH
M$1X+7*/)\@1\SPVZOGWA -W%_.1?4$L#!!0    (  2"7U=6.DZ@W@,  &L(
M   9    >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;(U666_;1A#^*P.VZ $H
MH@X[ARL)D)P$*0HCAM7CH>C#DAR1BRQWF3TDJ[^^WRXE66EM-R_B'C/??#,[
MAV8[8S^YAMG3?:NTFV>-]]U5GKNRX5:XH>E8XV9C;"L\MK;.76=95$FI5?ED
M-'J9MT+J;#%+9[=V,3/!*ZGYUI(+;2OL?L7*[.;9.#L>W,FZ\?$@7\PZ4?.:
M_6_=K<4N/Z%4LF7MI-%D>3//EN.KU4643P*_2]ZYLS5%3PIC/L7-S]4\&T5"
MK+CT$4'@L^5K5BH"@<;G V9V,AD5S]=']/?)=_A2",?71OTA*]_,L]<95;P1
M0?D[L_O !W\N(UYIE$N_M.ME)V\R*H/SICTH@T$K=?\5]X<XG"F\'CVA,#DH
M3!+OWE!B^59XL9A9LR,;I8$6%\G5I UR4L='67N+6PD]OUB'PO'GP-K3NRU^
M9[D':KS+RP/"JD>8/('PAFZ,]HVC=[KBZDO]'&Q.E"9'2JO)LX!K[H8T'0UH
M,II,G\&;GER<)KSI5[KHZ,]EX;Q%0OSUF+L]VL7C:+%(KEPG2IYGJ +'=LO9
MXKMOQB]'/SW#]>+$]>(Y]*]ZCN<1QI=#^C<*+<O/03J9ZL!LZ(8]:[,5],&H
M2NJ:EBOZJ.ECZ4W!EB9]Z&E =]PI6;.F]8XK?):K 0D4<.%D)5'#$<PW3->F
M[83>4XFO GA%$F$67UH52AWET1V<%SK9!E'I]R2U9\03:E(_2O"'['B:_3B@
M+E@7!%SS!HS6C;!,:Z&8@$JWP98-2I66M65N8P1VTC>#W@B(2#%XL('.1J+K
MK+F7J')6>_J6QJ^FJ#:E(G7P*85K$O*9L]^[ _7A ]0.*K0)%F)H?-ZRKK&$
M]\'21@59H70U>EVBU!GK-P8F$KD4L5;4FKTL8?L^NAU-5A9MBY"NX.&Y;+11
MII;LP$5XBGZC8T36P2'NQ9YJ90JAJ)"F0UA:I&H )$[*1#RJ1MP251MK #UL
MB][<)4[Q A3#!A?!1@KH]]#Y6\17=$/Z]>RUD[>B+$V 9HQBC(YX(M4$K,97
MZQ\&-T5P2%WG**!O_%>W9=^8*N5-;^$8#^@3XHHH5D#TC;35BTY8I-!6J)!X
MTD;:-F6&<]+UCY\,/$@<$O%$(IFV7/4>(@]3+E0/C#LK2XXY;,J#C?]Q.$6G
M8*1/J4(52T(G^:76 8^!TL+[$Y3B=*'QZ,4O)\@]"PL?H]);+KF-13D=]U4Y
M?*S+Y&<#H&5;IS'G*,6MGP6GT],D7?8#Y$&\'\,WPM92.U*\@>IH^.HR(]N/
MMG[C39?&26$\AE-:-O@WP#8*X'YCC#]NHH'3_XO%/U!+ P04    "  $@E]7
MH(:IS_,&  "8$0  &0   'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6RE6&UO
MVS80_BN$!FPMX-B.T[>U20 G[;9B*);&:S=@V =:.EM<)5(CJ;CY]WON*,EJ
MFWCH]B71"^_X\.ZYYTX^W3G_(91$47VL*QO.LC+&YOEL%O*2:AVFKB&+-QOG
M:QUQZ[>ST'C2A1C5U6PQGS^9U=K8[/Q4GEWY\U/7QLI8NO(JM'6M_>T%56YW
MEAUG_8-KLRTC/YB=GS9Z2RN*[YHKC[O9X*4P-=E@G%6>-F?9\OCYQ6->+PO>
M&]J%T;7BDZR=^\ WKXNS;,Z J*(\L@>-?S=T257%C@#C[\YG-FS)AN/KWOL/
M<G:<9:T#7;KJ-U/$\BQ[EJF"-KJMXK7;_43=>01@[JH@?]4NK7W\*%-Y&Z*K
M.V,@J(U-__7'+@XC@V?S>PP6G<%"<*>-!.5+'?7YJ7<[Y7DUO/&%'%6L <Y8
M3LHJ>KPUL(OGJY0,Y39J9;;6;$RN;53+/'>MC<9NU96K3&XHJ ?]U</36<36
M[&"6=]M<I&T6]VSSO7KC;"R#>F4+*CZUGP'R@'O1X[Y8''2XHF:J3N83M9@O
M3@[X.QGB<"+^3N[Q=]>!_UBN0_3@S9]W'3CY>W2W/ZZEYZ'1.9UE*)9 _H:R
M\V^_.7XR?W$ [:,![:-#WL\O=#"!<R:^;=3,\+M 'G1S-\C!]]7(M_JU))4[
M),\&*O@J($J%CKC9&*MM;G2E A83*C8&96Q>M4BU*LF3L:K4-Z361)8A-]KC
MS?I675-3F2T>7CK?.)^V>A"QU[??/%LLYB\N7=UH>RMWQR\F_>/>[O/GKO7=
M(^5\_W!'W;.'0 49R)TO )A0:;%4\$)>5]4MOZ&&#Z3W7&@\#F*:"FP87L,)
M(WQG#=^M^,PHCFZS'Y?+JV$[;0O5M#ZT7%+1B9EOQ1G>>-JVE1Q9POVESQ7E
MK3?1=.M??<Q+;;>$8-6U"2*+_;:K5Y?]KA,%J59O6^TC^4IB[#PR@M6L8^IX
M?O16_"U]-'E%>,#;7P]HU.KH=UE0.&5=[%.I$*0>I[&I'8BN8N7&N8BEI H3
M\LJ%%M3!^?YN39=H#LN4212^CD:A=&T%#X@;.@Z''C9_M39)NB20\>BVD,#]
MNT-&R_D56G&&&79@)YZ0H8&V79)'_#M^^B*HI;4M'*:8CD/ZLT2=338( 9;<
MDO:*6.W42\JI7I-7)\>B5XN)VI4F+]5.!RROL&0X"1(I;FGM6]9E7LP2-V1Z
MV+#/MX2UJZJ4$23IGIKD ''F3+Q-6W)>^D0%]!6+1LR+F:VU_D"*0C2UL%$B
M%]"\FT396.JH]&:#]IJ(+3'A\JFY>H336$]=T"NCUZ;:LWG/%%X(7%QOO/-]
M-FD73FW/PGL3?!\<3S=DVPX ?6R8A4$5*#(086\DA4_>N"*DX*[; .4,G1VP
MNMKD"BPD'S'W()B('L8 -MQX5ZNMNR%O&= 18IKHJ/,4-\/#3&AP2;TF7/[R
M_O7+H^/O%;A6$'Q/.B*R0RZ[T*X#DL3AN='>Z.X\0ICE]>KHTKT_6B"(WEE]
M8WP+/<IZIQD485NY-<*T)=<XCB<3E*F 1A?#!.Z;!DH!>6&*E-B1D N\R%V(
MTF,D3WUH^7",BB3Y Q*(E6>$)08A5HA.3<@"D9-@,+/33$,^?,?2B,V"A%M'
MJ!6B@WL0#VH36A3(GGVU\ZPN&\PG"#0'#F?(6;%H*M.*YV!5MQ..,Y=HRDC
M$5A V!(%*,F)I0LC8D__:V]+RI-ZQ1"$3C D5@:/=Z5#;SER.PMOG$93&&20
MMUUR8D<S%XA$/N_M>[\2=*]MZ/FS[Z14&4R$NNM)>]Q8E@[5@Y& 6JYH[,"'
M28TD]"JGD7Y@Z,6#<8^!C?MA/QM)]>_(#Y*?0+#IH%!3]3KY=XVQG>]1C"9#
M  <Q;NU(R;\Z'\Q)7?P%@LGSB9B:(,"QM;/@N.6^54U #Z:KU-?>0EDH=0BL
MNZSF6FVT\9_,6'UX]C@:%TSJ@\*!%<\(2>R[X70B!CT=&0>TI6O[?<^(I:=4
M7Q9" [++K)RZQY<>92'W$;G(=2C5!A]7_]]=8LUAJ,)24_<"V4>'!<Z3S M]
M$ W";6PAQ+JAI+_),ZH7'9T%.)>D=J[A!FU(.N=4'9B2'P]3\N.#4_(U@'SZ
M+8/!"FKL ?M=PX0*=\W,_]NI^HT2]0KRX_J27M9) RB/OLDM$J0]Z.Q!MER]
MRWB>Y8N0/605O6LV^8J2@?C<RU89A5)I0S)&M1\&:,#"4+B(X(W3C :!K? \
M]03.]ZBMCD>B)!PBRJ)D>J]*R?:SXWWW50=C"*,9='H7BV:CKV4THJW\)B"-
MPL;TX3P\'7YV6*:O[?WR])O%&^VW!L51T0:F\^E3<,>GWP'2372-?'NO7437
MD\L2@RQY7H#W/#CW-[S!\&/,^3]02P,$%     @ !()?5PE$F?J_!@  [A0
M !D   !X;"]W;W)K<VAE971S+W-H965T,C8N>&ULM5A;<]HX%'[G5VAHMYO,
M$, VYM8D,R1-MYUI9C(A:1]V]D'8 C2U+2K)$/KK]QS)-B8U#NUN7VQ9E^]\
MYRI9YQLAOZHE8YH\Q5&B+II+K5?C3D<%2Q93U18KEL#(7,B8:OB4BXY:249#
MLRB..FZWV^_$E"?-RW/3=R<OST6J(YZP.TE4&L=4;J]8)#873:>9=]SSQ5)C
M1^?R?$47;,KTX^I.PE>G0 EYS!+%14(DFU\T)\[X:HCSS83/G&U4J4U0DYD0
M7_'C8WC1["(A%K% (P*%UYI=LRA"(*#Q+<-L%B)Q8;F=H[\WNH,N,ZK8M8B^
M\% O+YK#)@G9G*:1OA>;#RS3QT>\0$3*/,DFF]MMDB!56L398F 0\\2^Z5-F
MAV,6N-D"U_"V@@S+=U33RW,I-D3B;$##AE'5K 9R/$&G3+6$40[K].5[RB7Y
M3*.4D5M&52H96%PK<O) 9Q%3I^<=#5)P;B?($*\LHGL <41N1:*7BMPD(0OW
MUW> 74'1S2E>N;6 4[9J$Z_;(F[7]6KPO$)ES^!Y+ZO\CJL@$JBU(G]/9DI+
MB))_JG2VD+UJ2,R<L5K1@%TT(344DVO6O'SSRNEWW]80[A6$>W7HEU.;,$3,
MR355RY9YDIMO*5_3R'B+)B&YI?(KT^@U,F5!*KGFH-4'%H5$"QC5V+6MTJU>
M^L.2D;F(('MYLB!6@$UA_AT$:!B^%O&*)ML_%0D,/WP2]HQ?O..G=OR6&;\X
MXT>H0CW!YYK%,R8+QQN,=RS(>AW3ZY(3&HL41? $J(A4P31U.FY,#L T)K&0
M&IB'Y"\IE,J>-TISH,#"AK$MRGJNQ'@W%(N$;3.%R#P%B>0UZ8.(P6 $K3>O
MAJ[COMUK9:.-!Z%I9+&KA!R-8_7[P1Z_3SW?]5H]?WB 5C;ZHGHY2KXR?^?K
M;X\*DG'CL3UM$RU-Q=J2&8\B9;&<MT0MP01GFLF8.-UNRQV-B-LK)&&7!W&P
M8_I3\0H> *H#?P M0-US#0X,G9J$]XN$]^L3'K;>, 7!X.*=0Z^%TH99J8 ]
M3^]RZL^VL"0Q)2T%5>LJ0"V=ZNJ&98$6W(*<&Y:#.?);&WZ@P'Z!^"'?U1[A
MH$1X5Q)T1>)SM:M"(9GAZ6+<J,N'70X4Q@)V$.IDRZ@D0A+8[]#!>="\?A8K
M%2.DQMG]PMG]HYV]\VR+3)1B62A^XA1"W!HIVZ5#8$[NT782R_(555Q5>;96
M=K5GW_.$)@$'C>F.PKSHC$IDXIP,N*CL=3AMP8DM)S=#<NA:>.D\)'9;RN^N
M^)_8FD7$(?;M9F^/&*\VK)G'C=MRT:-!8&6\)MYPU.H-O -U+QMME#PT;DQW
M!0CC&72$HF+U#YFDYC1:#>>X+7\X*AJ-3R)9_!H0UJA1T3BX7?Q'V_2\UL@]
MM%5EH_^;;0#-[Q:-7[>-[[1\8YNL49/#@R*'!T?G,"2E@$R!-#$<\@JXI,#0
MQBPK5W \U.WX7^_Q/R,W5";P*U65V;6,JC-[@DE902[8([=?O@\:-]]NF:6H
ML"+S)(A2./474,_.C8=R]XI&4%U8=:6'G=5O^5T(X@"V:,6-]! J^;%,,X:D
MW^I[;N..;O$7YZ@5)\3IM7QW0$YQ:\'CAK'2S\F%GRE4QNWW ::D:47%@S-%
MO^7UAG4Q.2QB<GAT3!Z,L"R^R,W3"GZ3<6.>,8A@L#-6=?B$OW(-&!^M8\F4
M+Q(^YP$%I,=$S#"PC&<_)BO0M"I.ZUGB,6*W4^3EIV3@>/=7:O;K5+[L-KT$
M\VX8866M9$DK9;5",+2[L7[/[#?0\ \+$+.(+TQ306Q+,EE#-()9S*DL8D]7
M7*AMD0;/4D"5;)>6;<>-[:J3HP5*!! H9,5D@(0@\"EDS(L>+948N\%BVTYY
M8,$RX=]@Y$<7DGM3"KZ8VPPPUF0-P-!QXIPV[J28V5*.1Z?&- T"/#'!68C\
M89] *XZ!*)P3^'<C[ RO3$*RLDEGCE>CEC?TS"4!E$4J(U%PQM]Q- &0@+%!
MVP%<\VQ\%A' &<F.ASUG</IN]V'<==H#F' /D9.DUA,P.8W9&<IJ]?K=/5'Y
MO#<T7KW-9A+?(H[:'@ .VR[@55/JVXF66;_MP\1]H^P9XY8FZ1P/LR:V,?(Q
M(JFYT#*_5%#5?%(".-OD9C<U&Z3:'*@ETV_W#!GD_E@15ALF&2F X8RM3<JA
M/==59_6#P9\?_+;MJNK4*=U!00@LS$T;GOJ K[V.*GJ+R[R)O</:3;<W@? 3
MN.!@H8C-86FW/8#?$VEOU^R'%BMSHS436HO8-)>, E&< .-S(73^@0***\[+
M?P%02P,$%     @ !()?5Y+>S*DH!   FPD  !D   !X;"]W;W)K<VAE971S
M+W-H965T,C<N>&ULC5;;;N,V$'W75Q!J4"2 $^MFQTEM W9VTQK8[0:Y;!^*
M/C#2V")"D5J2LN-^?8?4)<K",?IB<SBW,\,Y%*<[J5YT#F#(:\&%GOFY,>7U
M<*C3' JJ+V0) C5KJ0IJ4%2;H2X5T,PY%7P8!<%X6% F_/G4[=VI^516AC,!
M=XKHJBBHVB^!R]W,#_UVXYYM<F,WAO-I23?P .:IO%,H#;LH&2M :"8%4;">
M^8OP>CFR]L[@.X.=[JV)K>19RA<KK+*9'UA P"$U-@+%ORW< .<V$,+XT<3T
MNY36L;]NH]^ZVK&69ZKA1O*_6&;RF3_Q209K6G%S+W=_0%./ YA*KMTOV=6V
MEXE/TDH;633.B*!@HOZGKTT?>@Z3X .'J'&('.XZD4/YB1HZGRJY(\I:8S2[
M<*4Z;P3'A#V4!Z-0R]#/S!?ICXIIYCHDU^26P^N22;W7 [(2*3E]I,\<]!DY
M[ZFF0X.9K?\P;;(LZRS1!UFNR%<I3*[)9Y%!]MY_B(@[V%$+>QD=#?@ Y06)
M@P&)@B@^$B_NVA"[>/$'\9:5QAVM2;\??W_!/;(R4.A_#M5<ATP.A[1LNM8E
M36'F(UTTJ"WX\U]_"<?!;T< )QW@Y%CT^0.R,ZLXV$.[AU1N!/L7,K+*0!BV
M9KA<: VF*4BA3$5&OC#ZS#A6!]KJJ^+GPZ@+.Y[Z,0>2RJ*4 G-I%Q>T8<@0
MFX5SF=)VG R:EI5*<^0-*15+K2<26IM6NY;HL&-B0TYI(2L;D G4R$IC8'UV
M[=U0G;LDJ5T 5K.EW&4^(>$@N J\19K6G@I20"U.+!E/8F\EMF@GU9Z,QY?>
MG8*2,L3ZBA>:AAJX1 P*>:846A):MRP>H3%>>\KLZ^HP9UE8@S :!''B?4,=
MUHB@.=C*E*6^K:A"P04A\6 47WHWCL"800%W3=$Y*S6)4!EXGV"+=V*)33.0
MYD)RN=F3J\%D''B/BF9X^:H7E]]82= "<.*]/Z4XM]T'4P\IW2B PO4CB@+O
M=RFS'>.<A,D@CD+OFRN02[$Y-Z"*ML2PU[62[EW+3DD8C\F95:@*4?'>L)R2
M.$Q0]W/EK<W>6EP=,QCT0*#M(+F:H/DM98K@>59ND 5T9T#;L3TA"9YR'!SA
MS*CCS.A_<Z9'E)4P5&R8;4'#&=OTS]U(/VE85QRYLX6#5]_1I(>O@<=WDV]<
M^UUF_,J:W!&CQ["&*NP-,GN#W/9+:YDRAW?'FA!O-_:[:\V-5 [8^#?:5G6-
MW-9X[3VUTAJ#V!/Z;D_(.UT<8NA'0QY&9 ]469H>F?=PW%@='_RDL3I.@%%C
M98EP8LDZ3@)R:'"&O0\F(M^X9X$FCA#UM[/;[5X>B_J#^V9>/UN^4K5A0N.X
MK]$UN+C$<5#U4Z 6C"S=Y_=9&FR36^;X>@)E#5"_EM*T@DW0O<?F_P%02P,$
M%     @ !()?5Q;$T!C_ P  D D  !D   !X;"]W;W)K<VAE971S+W-H965T
M,C@N>&ULC59;;QHY%'[G5UC3591()'/C,B& E*2I-M*V18%N'U;[8&8.C%6/
M/6N;$/;7]]AS";0$14+,\?&Y?,?^CNWQ5JH?.@<PY*7@0D^\W)ARY/LZS:&@
M^DJ6('!F)55!#0[5VM>E IHYIX+[41 ,_((RX4W'3C=3T['<&,X$S!31FZ*@
M:G<'7&XG7N@UBB>VSHU5^--Q2=<P!_.MG"D<^6V4C!4@-)."*%A-O-MP=->W
M]L[@;P9;O2<36\E2RA]V\)A-O, " @ZIL1$H?I[A'CBW@1#&?W5,KTUI'??E
M)OHG5SO6LJ0:[B7_SC*33[S$(QFLZ(:;)[G]$^IZ',!4<NW^R;:R[4<>23?:
MR*)V1@0%$]67OM3KL.>0!&\X1+5#Y'!7B1S*C]30Z5C)+5'6&J-9P97JO!$<
M$W93YD;A+$,_,WT";=0F-1O%Q)K,.!7D?$&7'/3%V#>8P)KY:1WLK@H6O1'L
MFGR6PN2:/(@,LD-_'X&UZ*(&W5UT,N <RBL2!UT2!5%\(E[<5AN[>/&[JJ4B
M(T_ J8&,W%IV,,- DW]NEVB%=/GWV I4"7K'$]@6&NF2IC#QL$<TJ&?PIF<?
MPD%P<P)^KX7?.Q5].J\ZA\@5.:QD#_UR1Q:[$JS-O=3F6 FGDRQR("O)L5MM
M9&.Y4+<L^Q_C&YQ.<ZK6**MZ\8Q$\6!E#_"8&D^*>$:=1:X W-I_P<P'C"&X
MWP:*):AVTSMS> 9%10KDC!;E#7DH2BYW )?-SMDJ-7D4SR",Q,7YKIB!RZ^K
M%:Y*BMVOG-5'P/U(&75'P2>:,L[,SJ'XBA4I\O#"3!UJ(0WEG?/;0FX$#IG
MFN5&HZV^Z%@36TNI9(;E8MV8=P/D#Q)V!_V>_0Z[8=)'(>X.DP2_B=5&47<8
MAAW<-J JS5WF#'VY+/&(,R3ND;,/211&-R1LI;B/Y7/<H'67K$%@*=PYT@Q/
M F9):H\TS!SVHM8I&I+K(>JBP:"#>;M)'!RB2L*!522AA=7K!F%T@IK]EIK]
M]U*S)N.N[2VDQ^_'S#%BGD[1QMVCG67CD2,,+RLW)2S#BHIA\ ;#R)9J@K^*
M\YJ<TV,;/^H<IJFHTG!D1EE6V<.[6$V^2'%Y3W7^"_A'M-._Z/YB=.G8^ELK
M0-,*S8*D#M3KII^CU!LFY**2PYZ3PCCIO+;+UK6+Q':I*=+PR+K4JHM&V=EO
MJ6R_I2I:[?M6FE?7MNG MIJEL72=YX85<LM)FS2L$8?!GK]KRY:R=76#WG5;
M73>*^DV!QQCM[]V2!> !9M\"&E/C%E879JMMGQNWU2W[:EZ]53[C^<>$)AQ6
MZ!I<#9&YJKK_JX&1I;MSE]+@#>[$')],H*P!SJ^D-,W )F@?8=.?4$L#!!0
M   (  2"7U?+HF+MLP,  )L(   9    >&PO=V]R:W-H965T<R]S:&5E=#(Y
M+GAM;'U62V_C-A"^ZU<0:E%D 2%Z1G[4-F G+=K#+@PG;0]%#Y0TEHFE2)6D
M[$U__0XI6>ML'1]L#2G.-]\\.*/%2:K/^@!@R)>&"[WT#\:T\S#4Y0$:JN]E
M"P+?[*5JJ,&EJD/=*J"54VIXF$11'C:4"7^U<'M;M5K(SG F8*N([IJ&JM<-
M<'E:^K%_WMBQ^F#L1KA:M+2&9S!_M%N%JW!$J5@#0C,IB(+]TE_'\\V#/>\.
M_,G@I"]D8CTII/QL%[]72S^RA(!#:2P"Q<<1'H%S"X0T_ATP_=&D5;R4S^B_
M.M_1EX)J>)3\+U:9P]*?^J2"/>VXV<G3;S#XXPB6DFOW3T[]V4GFD[+31C:#
M,C)HF.B?],L0APN%:?2.0C(H)(YW;\BQ?**&KA9*GHBRIQ'-"LY5IXWDF+!)
M>38*WS+4,ZL='$%T0'90REHP%ZF[%UIPT!\6H4$+]EQ8#FB;'BUY!VU&/DIA
M#IK\(BJHWNJ'R&RDEYSI;9*;@,_0WI,T"D@2)>D-O'1T-W5XZ3MXZ[*4G3!,
MU&0K.2L9:/+WNM!&87G\<\WA'B^[CF>OS%RWM(2ECW="@SJ"O_KIASB/?K[!
M-AO99K?05T],T[I64%.7%[DG0[JN$;T)=9WH@*8)7FYB#H _!4"HJ(A ?=+T
MR02;3(*I,- 4H,9\N(,H).0$"M4L#L=;KN?>BP.Z+ ;RR2)>[G@.P^F/DG>W
M;FR"-&$"V<A.HPW]P=LJ676EP3;0E^N/),[B('[(4<+^$TRB*4K9- EF<812
M'F=!GD^]G7REW+PZIA(]5(A;R@9(FI,T)7$<DSC*O1=I*/\>?):<P;/8@:=!
ME,0#^&22D1L9?A@S_' SP\]]+^Q36P([NIOGZ#[!'I3"P)VOZ%[)ACQB &VM
M:NP3YD >78< I:]5Q$W3UROB!8N@3Z*](L:R(:V21U:!34D_!%PW+;##8\3>
M<J[.G-4EY_(MY_+,V58,.GZEL.[HM2J8>V^//J'U?A$'WXK)VU!.16FK^J9Q
M*?CKW!L:@KYPQ>8_RK&X;$G%<1XDV<1[^MZS.RPDWMG"9G:VE*I#D3-:,(Y=
M=(B'U0^R;&*%69"GL7=.INK[[7^H5'7*!KL%Q62EB4N&,,X4IZY5&6EO%) "
M:B:$W?E?H(O>:6LH#V:SF172()U%5ZLTO!@8&(S:C45-7"CZV3'NCI-WW0^<
M;\?[L?V1*B2E"8<]JD;W$ZPZU8_"?F%DZ\9/(0U&WHD'_'H 90_@^[V4YKRP
M!L;OD=574$L#!!0    (  2"7U?*L,)3/@4  +8-   9    >&PO=V]R:W-H
M965T<R]S:&5E=#,P+GAM;,57;6_;-A#^KE]Q<(W" ;A8I-[=Q("3)ET_= N:
MK,4P[ ,CT;96271).D[VZW>D9->I5:_8@.V+?:3NY3GRN2-YMI'JDUX*8>"Q
MKAI]/E@:LYJ,QSI?BIKK4[D2#7Z92U5S@T.U&.N5$KQP1G4U9KX?CVM>-H/I
MF9N[4=,SN395V8@;!7I=UUP]78A*;LX'=+"=>%\NEL9.C*=G*[X0M\+\LKI1
M.!KOO!1E+1I=R@:4F)\/9G1R$5M]I_"A%!N])X/-Y%[*3W;PMC@?^!:0J$1N
MK >.?P_B4E25=80P/G<^![N0UG!?WGJ_=KEC+O=<BTM9?2P+LSP?I ,HQ)RO
M*_->;GX473Z1]9?+2KM?V+2Z<32 ?*V-K#MC1%"73?O/'[MUV#-(_6\8L,Z
M.=QM((?R-3=\>J;D!I351F]6<*DZ:P17-G93;HW"KR7:F>D;*8M-657 FP+>
M-H8WB_*^$C#36A@-HSN.(WUR-C88S)J,\\[Q1>N8?<-Q!N]D8Y8:KII"%,_M
MQPARAY1MD5ZPHPYOQ>H4 I\ \UEPQ%^PRSQP_H*_RWR&F?]LED+UY/^ZU'DE
M]5H)^&UVKXU"%OW>MQAMK+ _EJVLB5[Q7)P/L'2T4 ]B,'WY@L;^JR.9A+M,
MPF/>IY=+1"TTE U<<J6>RF8!'WBU%B#GL$VS#_11M_V@[Y8"YK+"6K91C&4'
MUJ;[WN!ZX3)"[N!8-&ZT1?2P1;38+CRV%*?28&"H6[8(RQ; O3:BOL<MV6XX
MC'@MUS:$\RO7&@FK3R;>!:]XDPO@!EZ+O#.BSHC!$-(H(A$-O%G^>5WJTG4"
MQ'!=B<>+4NHG37#7\U.@(0FBR'LGN-UL[#H&5D*5L@!>_(%EZ&9>OD@9I:_V
MK&$$00@GWN6Z7E?<-AA CC3:RK;G?+$=090RU-S#VY,E HXSPB(&1W@1[7@1
M'>7%+7;P8EVY13^@=A\?CKKKY\.>7^[\$FB$(9!+[-O:X%YB</.,-+V93[S#
M.>^-DEK#+,_;U45G/^$Q]=%U6E%XHUD?);SKLBF-^*'"S2CPTU?X)MZ=R)>-
MK.3B:;>AA7C XVF%^D.,[!.:IBB-(/2)GP5P@@.L590C_/=N$(H-RT(?=>SO
M2>N)O8(4J6";-J:A1,L"O2Q7J(Q$I!1Y#$E*,I:A#4UBC!0"C;P[Q0L\;?$D
MAH0D?H9JE,21#1T3/XJ!9E[;H[XDI"$@/HLM!!($S*IF(83>G30<B^OH*D 8
MQX0EUIBR@+ P0?,@M XSF^);+,.C'B;/(/O^;@'VY [)8?"A"Y]A^.$S $,'
M(4$(_XQ6!PU@XAU,_3^DHIE/PCAP^2*]LXRUI(HR$B;T7Y"*D0P;T AP/:/(
MD2J-29!$!Z2*L?M84@4T<Z0*$$TOJ1A)*76D\D-L;9#$R7>3*@H)#2Q^ZE-"
M(VL>6(BXT_\%J3!\BN&'SP @J:* Q CA2$N-=RTU_NZ6BD11IORS[?17CWA-
MUL*=:=T'T7.AZNNZ1R/V=]V9M@ ..R9Q-7$IZQ5OGD @IMP>RA)IDTM5?%TQ
M^PF(+@&D_7QM[(6G/?_T-T_>*VW*VA:0M[\2WG5WJO\JN.IN?\\+LULJKSW6
M\;#%IX.[3"R5V-X#[+8E)/)#JQ4"RY#=J94C*S/F6SFV,LV8E1,G1YF54W>9
MM<06?&XP*J,I";*XH\YPU^CZ"#'>NTMCP2W<BT%CX\$E:*_5N]G=HV36WL6_
MJ+<OFG=<+<I&0R7F:.J?)GB^JO:5T Z,7+F;^;TT6-U.7.+#2BBK@-_G4IKM
MP ;8/=6F?P%02P,$%     @ !()?5QD[&KY:!   9 H  !D   !X;"]W;W)K
M<VAE971S+W-H965T,S$N>&ULM59-;]LX$+W[5PS<H&@ MI:H[S0Q$"<I6J#%
M!DEV>UCL@9;&-E%*5$DJ3O[]#F5'R>XZPAYV+Q2_YO$-WW TIUMM?M@-HH.'
M6C7V;+IQKCV9S6RYP5K8#[K%AE96VM3"T="L9[8U**K>J%8S'@3IK!:RF<Y/
M^[EK,S_5G5.RP6L#MJMK81X7J/3V;!I.GR9NY'KC_,1L?MJ*-=ZB^[6]-C2:
M#2B5K+&Q4C=@<'4V/0]/%JG?WV_X3>+6ONB#]V2I]0\_^%*=30-/"!66SB,(
M^MSC!2KE@8C&SSWF=#C2&[[L/Z%_ZGTG7Y;"XH56WV7E-F?3? H5KD2GW(W>
M?L:]/XG'*[6R?0O;W=XXFD+96:?KO3$QJ&6S^XJ'_3V\,,B#5PSXWH#WO'<'
M]2POA1/S4Z.W8/QN0O.=WM7>FLC)QHMRZPRM2K)S\PO=6*UD)1Q6L!!*-"7"
M;1\.E^B$5/#N3BP5VN/3F:/SO-6LW&,O=MC\%>P"ONG&;2Q<-156?[6?$<^!
M+'\BN^"C@+?8?H H8, #'HW@18/S48\7O8)W*6VIM.T,PAT^.%@H7?Z W\^7
MUAD*ES\.N;Q#C \C^B=T8EM1XMF4WHA%<X_3^=LW81I\'.$;#WSC,?3YE^8>
M&Z>-1'N(VJCQ86HO$!DT)/H_)DH*$&F=!;T"MT%8:44/63;KDPG)X;!>HNDU
MN<1R/PC9Q OD5>*3=^>U[AJREPW9Z\Z*IK+'DQNQI3!V:*10%HX@Y#G+B]CW
MXH+%43[Y3J_YO6S>MT:7:"TD+(T"2%F81Y-/LI$4\Q708M65A)ZE+(]SR#E+
MDW1RIYU0=.+??#D"'H8LRKCO13GC608CLB2#+,FH+->&<J1QCPRNZ?TX( _A
MZF<G6TI>[I!0HW"'A1H] YY7VV$5A]6]A/^Q@E_](4=0)($7C05!-%ET4E4$
M;&F<1AFU25%,OB)ES8U6%<B:]+I'3XJV\)@5/($P)&4S/GGV)B214EHI8I:&
M)'9G&NGHD3)8R0??L;V#>K62E*R>_<Q9EJ?41D$VN=!UVU%XP4:8:BOHA7L3
MJU>N'T0)BY(">,%R.L$G06>ZW7^"O"26:^-C+LJ(6N'O(TFBR2]T>P;B,("8
M!_L8:T=O/N(^W$+@%)=%'M!5$.C;-SF%X4<X+\NN[E2?>2LDJ4LI>@;OZ 8*
MEB41'%._X-XA./XW!PYA'M -AKD7I@C(A6@LS-,AS-/1,">^IB.N7Z582B7=
M*UEH%.1P<!] AJ<Y]6+N_PGDJ[I5^A&1X&NJ=>Q.!+JZB&4\HTX4L83,+W&%
MQA E@Y17.H0P8#E%!VG%*2=]:<@>P8D'8MJ*1__7!,[B./5M4NS#AZ(]+D+_
MR8=$)0[X>D1!QI(XHDX6LI '!R6<O?CSUVC6?7WC+XK\W!4!P^Q00IWO*H?G
M[;OZZYLP:]E84+@BT^!#1EG*[&J:W<#IMJ\CEMI15=)W-U0&HO$;:'VEM7L:
M^ .&PG+^)U!+ P04    "  $@E]7Y)G:8'P#   @"   &0   'AL+W=O<FMS
M:&5E=',O<VAE970S,BYX;6Q]5EF/VS80?M>O&*A)L0L8UF'+5VT#>R1H'K)8
MQ)OTH>@#+8TM(A3IDM1ZM[\^0TI6O*GM!U/#8[XY/@['\[W2WTV):.&E$M(L
MPM+:W2R*3%YBQ4Q?[5#2SD;IBEF:ZFUD=AI9X94J$:5Q/(HJQF6XG/NU1[V<
MJ]H*+O%1@ZFKBNG76Q1JOPB3\+#PA6]+ZQ:BY7S'MKA"^W7WJ&D6=2@%KU :
MKB1HW"S"FV1VF[GS_L WCGMS)(.+9*W4=S?Y5"S"V#F$ G/K$!A]GO$.A7!
MY,:_+6;8F72*Q_(!_:./G6)9,X-W2OS%"ULNPDD(!6Y8+>P7M?\3VWB\@[D2
MQH^P;\X.QR'DM;&J:I7)@XK+YLM>VCP<*4SB,PIIJY!ZOQM#WLM[9MERKM4>
MM#M-:$[PH7IM<HY+1\K*:MKEI&>7=TH^H[9\+1!6*+G2\* L&KAZ8K1FKN>1
M)3/N<)2WD+<-9'H&<@J?E;2E@0^RP.*M?D3N=3ZF!Q]OTXN *]SU81#W((W3
MP06\01?SP.,-SN#=X]K"/3>Y4*;6"'_?K(W5=#_^.15L@S4\C>5J9F9V+,=%
M2$5A4#]CN/S]MV04_W'!TV'GZ? 2^O*.:?W*Y1:^,5$CJ V<X^N4YQ>Q3WO^
M5")(>@KR@^'G@V%+.X*S-1?<OD*NJIV2*.UA*XV3:7MSN %F8*,$%;R9!<2>
MQ6J-VE-XCWD[27K!U4VE:FE)11*(J@V3A;D.XOY@G+T_&RH4M;.7#F?!H^8R
MYSLF@'DD> ?I9-P;#L8':1P'7R5M$LY_6%"]$O7<F)K)'"D*0\:O(.D-)PE<
MDY3V)ED&U\'#<0Z.L+/>-!MY:=@;)1E<X#CK.,XN<KRB=[:HA4]RWH;L2@\D
M!4N9L4CL6, 7>H<-GN+Y,KZCM"'#Q6(]M$'K&-*V!*LLI>]7,_3>YFHK?<XT
M"F;I:]4O3,^"IU(COBEW>"#S;U8"5[6.KQ0ZZ1SS1+DOQ/J42Y3UT=2-XYC&
M23SQXS2X:=AE_I6G))[B>)A-Z9<1TX/QP(VC.'CRD;^#<3KQ8^:P>PG=!/\=
M38,/FPWZKO'3&4VIN%0.23^&]_\?3]V3Z.C5KE!O?6\RA$6):1[P;K5K?S?-
MJ__S>-,[/S.]Y=* P VIQOTQ70G=]*-F8M7.]X"ULM11O%A2"T?M#M#^1A&A
M[<09Z/X4+'\ 4$L#!!0    (  2"7U>OI+8"404  (4.   9    >&PO=V]R
M:W-H965T<R]S:&5E=#,S+GAM;-U737/;-A"]\U=@E#:U9QB*WQ^.K1G9<=L<
MTGIL)SET>H#(E<B&!!@ E.S^^BY BI9329-F.CWT(@+D[ML'[.Z#<+[AXI,L
M 11Y:&HF+R:E4NW9="KS$AHJ'=X"PR]++AJJ<"I64]D*H(5Q:NJI[[KQM*$5
MF\S.S;L;,3OGG:HK!C>"R*YIJ'B\A)IO+B;>9/OBMEJ52K^8SLY;NH([4._;
M&X&SZ8A25 TP67%&!"PO)G/O[#+6]L;@0P4;N3,F>B4+SC_IR=OB8N)J0E!#
MKC0"Q<<:KJ"N-1#2^#Q@3L:0VG%WO$7_T:P=U[*@$JYX_;$J5'DQ22>D@"7M
M:G7+-S_#L)Y(X^6\EN:7;'K;T)^0O).*-X,S,F@JUC_IP[ /.PZI>\#!'QQ\
MP[L/9%B^H8K.S@7?$*&M$4T/S%*--Y*KF$[*G1+XM4(_-;M3//]4\KH (7\@
MUY^[2CV2DWNZJ$&>GD\5AM"&TWR N^SA_ -P&7G'F2HEN68%%,_]ITAMY.=O
M^5WZ1P'OH'5(X-K$=_W@"%XPKC<P>,$!O&&%O\T74@DLB=_WK;&'"/=#Z#8Y
MDRW-X6*"?2!!K&$R>_G"B]W71PB&(\'P&'J?D%>76&@%N>(--I^DIGZO'_08
M]O$]CGA? EGR&MNO8BNB=&J)(<Z4)-*$6YAP^6XXZ,.1BA&% )H*98\O7Z2^
ME[R6:(L)9KT7D[RN"JIP(A4^&H/,EP900*E;>*V1< YGUGTI )[5"?D%*3][
M8^ETZYS[9!Q9)_.&=QK:<.*=I*R0I]85ETI':P4ONERA5*R!=4"^(T$6X&_L
MN?CKV9$;FV<:)M8M+I^*O"0(@4V\1G%J-6V2N"Z)@I#XMIM%:)Q%D76'FH%;
M9Y,5,!"T-DZTP&ZL=!%I62&1[:?H:;L8S(LP5D:\Q/8CW[KG"ET.[C/RLX/$
M\+2]*-0,,]LSE'W/=J/P2$U%8TU%QVNJ5UR]2;^V)NI<BR$VPKYJ.HJUO_K?
MLOYXZ)5Z146A2XVW3\*KFPYM3"TQG>VFSS:8_&.78]DL0(RM3CK\T)O?U)1A
MSN5P<%1_HL-"GR9GUEU)D0/Y:+077V\'K\A\M=)$%%C]BK$>.X75R0PSJL@;
MR(>(GMT76NQF=A9'N/&)YR2A]9.@3(/&L>W&F4Y,$CAN:ET_@,@KG<@3XOMV
MFOCD5'^-',PV'A5+J-!MB@U4"7SFE.580+VY[6)]&>LL<Q+O$+D]^Q%'GNW%
M/KJF@1.[HR?T;$Q7[_<,$L].4M]T@A/&U@>0>EFZB'63YWJB.%GCZP,()]XI
MB8/$CDV=8GPO)9%C)E%@X[88BUL85<5DN3,@6'/K/B ?&%.C#7O"M'7WI6O'
MOG#^.^-#:'VO\5Z^GG!V-GHDM'?1M/BC,RZZ;-&Y:N@PTPGN!!!L?3#14_*]
ML:(;K'Q)5D/A($7&V2O,4-X9D:BUT!!HVIH_ KKJ% 0'?0_Z.>2()L2C)L1?
MJPDHADI49E?-Z4/>LTH=E8BCT/]$(HPL8G8PWE8F;+(I*U1F/"[JKM"[M*L?
MXHGKDV^_DRT($P+;;?>;_1_HSGR-Y\(*K/?;,MLK,!&.W,!(?.@[46+-=<[1
MVDLB.TPB(S&ADXXM>J(EQTZ\L)<,+W42=T=A=I4%^S#S!VE),B<*GG'9L\XP
M25&Z3,PT=4+O&V4A]#P[#LW!&@5.DGV5$CS+W+>HP2[ OZD(SXC]+U1ANG,U
M:$"LS 5(_WW#/U+]+6%\.]ZQYOW5XLF\OZ"]HV)584?4L$17UTGPCX+H+SW]
M1/'67#067.&UQ0Q+O">"T ;X?<FYVDYT@/'F.?L+4$L#!!0    (  2"7U?<
MV_;T# 0  %0)   9    >&PO=V]R:W-H965T<R]S:&5E=#,T+GAM;)566V_;
M-A1^UZ\X4(NB!;18=SF.;2"W87MH&C3=\C#L@9:.+:X2J9%4G/W['5*^!7&\
M[L$F*9W+]YT;-5U+]5W7B :>VT;HF5\;TTU&(UW6V#)])CL4]&8I5<L,'=5J
MI#N%K')*;3.*PS ?M8P+?SYUS^[5?"I[TW"!]PITW[9,_7.%C5S/_,C?/OC*
M5[6Q#T;S:<=6^(#FM^Y>T6FTLU+Q%H7F4H#"Y<R_C"97J95W K]S7.N#/5@F
M"RF_V\.OU<P/+2!LL#36 J/E":^Q::PA@O'WQJ:_<VD5#_=;ZS\[[L1EP31>
MR^:15Z:>^6,?*ERROC%?Y?H7W/#)K+U2-MK]PWJ0S5(?REX;V6Z4"4'+Q;"R
MYTT<#A3&X1L*\48A=K@'1P[E#3-L/E5R#<I*DS6[<52=-H'CPB;EP2AZRTG/
MS&^9$ERL--RC@H>:*82/W]BB0?UI.C+DP(J-RHVQJ\%8_(:Q<_@LA:DUW(H*
MJY?Z(P*V0Q=OT5W%)PT^8'<&21A ',;)"7O)CFWB["4_S#: *Z9Y"7]<+K11
M5"-_'J,]6$V/6[5],]$=*W'F4V-H5$_HSS^\B_+PX@3F=(<Y/65]/N!CHH(;
MWO0&*WATI4:;RR=4U#D#$PU?>J,-"1+#8R1.NCE.XI+ZKI2BY UGKHGDTO;
M!D^UP;/>XF$;/'K (_=X@&M@&I:RH2F@)]ZW6B&^J!:X(T OGG@VZ3;S,>QV
MWL?+5O;":. "3"U[3?9U /A<8F>@H[0ZYU!1,WSR[OJ6$!FI)MX=#3@N2MDB
MO(=H'$1%3)LT#-(PHTU>!&%N-U%2!'$2>K?+)0T.2]C1I-$!&LM><<.1"%R3
MEQ5:4EJ6%!P;!FYJH&A1$ RG#J+AL+ ^J:X(!F$.0*"S:-@S?'@WCJ/XXM6:
MC(L]; J8VH49M\6[9^F4H@MG=T../3'>V 8&(PE-VU+6:(J4WVO95*@(\=*0
MOJD1\!3%_XY2'A7>#0I)4VD(\>,;==!K>D;Y(C0=N:%J.,#[FLQ08%D6%'EN
ME_1\;)=\[)8TB8_FQKF:>%\Z6Z?:U:>C#;W@5"YI<D[H$TAS6O/$NS[(TP,*
M3G&^DX; %DD&41 E$11%3KLLC+R;K9=]Q'I2UY8KX7=7HRCQA<.?(+:_O6Y'
MYH7AK-EE98@..2M2^A^'UEV<9A '49X?AO9'RX!5?_7Z5$?^STQL769Y<)Z&
MD!5!$J;NE"3VE)V/O=M7<";>,++>0WA&<G8I[!*=Q2$M\5DZ]K:CS,G$@TSD
M9**QDZ%T'9N=HX.;CGIDY>YS37QH)@R7WN[I[I/A<K@I]^+#]\9G:F!J3FAP
M2:KD/_-!#7?X<#"R<_?F0AJZA=VVIL\>5%: WB\E971SL YV'U+S?P%02P,$
M%     @ !()?5\BH@.+; @  ,@8  !D   !X;"]W;W)K<VAE971S+W-H965T
M,S4N>&UL?57?<]HP#'[GK]"EMZV]VS4A0$LI< >L^_'0C@.V/>SV8!(E\36Q
M,]N4]K^?[(04;I07Q9*ESY]L21ENI7K4&:*!YR(7>N1EQI0#W]=1A@73E[)$
M03N)5 4SI*K4UZ5"%KN@(O?#(+CR"\:%-QXZVUR-AW)C<BYPKD!OBH*IERGF
M<CORVM[.L.!I9JS!'P]+EN(2S8]RKDCS&Y28%R@TEP(4)B-OTAY,N];?.?SD
MN-5[:["9K*5\M,JW>.0%EA#F&!F+P.CSA#/,<PM$-/[6F%YSI W<7^_0/[O<
M*9<UTSB3^2\>FVSD]3V(,6&;W"SD]BO6^?0L7B1S[21L*]]>SX-HHXTLZF!B
M4'!1?=ES?0][ ?W@C8"P#@@=[^H@Q_(3,VP\5'(+RGH3FEVX5%TTD>/"/LK2
M*-KE%&?&2TSIB@TLL)3*<)'"^8JM<]070]\0OO7RHQIK6F&%;V#=P+T4)M-P
M)V*,#^-]XM60"W?DIN%)P"66E] )/D(8A)T3>)TFV8[#Z[R!M\)G ]-<1H_P
M>[+61E%-_#F69P73/0YC^V2@2Q;AR*-&T*B>T!N_/VM?!;<G2'8;DMU3Z.,Y
MJHA>A#H"UB_P!66J6)GQ"";4=" 5+'DJ>,(C1L\V<Q6"2A_+XO0YJPPAD3EU
MI7UU8Q^=NLPE)(P&0]LS691,O+P_ZX?MZUNR2<-R<GI"L7'LTE=VS+([MPT2
M W6;#:>+9J[U9.+TJ"9[,6BM,H5X4"[P0/P.+"UZ?H/%&I6K@0.M92O"ED4(
MS:JU>"6V.TI_V.>X(Z0'K0>J]@PFY$(7"=T;> ?=T(INO6K=;12-/NA80Z=G
MQ945?=J:S"<S_SNEI*!]348B0"*H16MU<$WMP&[\)X]5BK_7Q\0L==-*0R0W
MPE0MW5B;@3BIYL"K>S5-[YE*N="08T*AP>4US1]53:A*,;)T4V$M#=V46V8T
MU%%9!]I/I#0[Q1[0_";&_P!02P,$%     @ !()?5VN/H"#? P  %10  !D
M  !X;"]W;W)K<VAE971S+W-H965T,S8N>&ULM5A=C]HX%/TK5K;:;:4IB1,^
M9R%2R_1+VDJCLM,^K/;!A,M@C1-3VX&ROWYMDTE(25*8"2\0)_>>W'-L7PX>
M;[EXD"L A7[$+)$39Z74^MIU9;2"F,@.7T.BGRRYB(G20W'ORK4 LK!),7-]
MS^N[,:&)$X[MO5L1CGFJ&$W@5B"9QC$1N[? ^';B8.?QQA=ZOU+FAAN.U^0>
M9J#NUK="C]P<94%C2"3E"1*PG#AO\/44CTR"C?A*82L/KI&A,N?\P0P^+2:.
M9RH"!I$R$$1_;6 *C!DD7<?W#-3)WVD2#Z\?T=];\IK,G$B8<O:-+M1JX@P=
MM( E29GZPK<?(2/4,W@19])^HFT6ZSDH2J7B<9:L*XAILO\F/S(A#A)PMR;!
MSQ+\4Q."+"&P1/>565HW1)%P+/@6"1.MT<R%U<9F:S8T,=,X4T(_I3I/A>\)
M%>@K82F@ST!D*D#/D9+H-9KM)Q;Q)9KR>$V2W1\238E<7=E/].Y[2C>$V6B2
M+-!G(AY D3D#-(,H%511D.@CL 527#]5YM8.O;S1092]TF^XF]V@ER]>H1>(
M)NCO%4^EQI%C5VE>ICHWRCB\W7/P:SC,8-U!@7>%?,\/*M*GS>DW$.ET;-/]
M<KJKU<PE]7-)?8O7K<&SZAA%8I[ 3D^6T04MTQINC6!F%U_+-8E@XNAM*D%L
MP E__PWWO3^KF+8$5N(=Y+P#BQ[\BO?1\OCG+QV*/BF(Y;]5$@1M2M 26$F"
M;BY!][2IC\P%%!)<H3<Q%XK^!UH>+E7E2MAC]RVV:;^;L!]X@\%H[&X."1Z'
M]?R@VQOF8:72>WGIO:>6_DXJJANF+KWH%E7U[U_0^U7]QV%-]??S^OM/J[^J
MTD:H<Q=<2V EUH.<]>!">V[0I@0M@94D&.82#"^XYX:GK=GCL*8U.\I+'UUZ
MSXU.ZQFCL^K'7N$>O$8&=YU9!REAG<,.S2ECU;_?C2CGKK:VT,J<#QP3OM">
MRX#;DJ$EM+(,A<O!)]J<)^V[9O"SI?"/UC?V/'\TJEG?A:7!C78A/#"U,C>U
M5^B#X%*BNT0O?&9Y?M!_F*IYMNIM,K1#GGZWAF/A67"S::GA>&H':D8_FV&W
M:B8#X^LK61;V!I_@;^"G_RQQ%?5*DHW@9Y-L":TL1>&4</]2#:Q5X]066EF&
MPCKA1EORW ;6JH'*T$H^Q \&O4'-LB_,$6YV1\]O8(WX9_,\-E*U#:QP4;C9
M1CVW@36BG\VPPI'IF1SBGUBZ!V<VYL!,D[C74X 8+'6BUQEHC<3^#&H_4'QM
MCW'F7"D>V\L5D 4($Z"?+SE7CP-S,I2?!(;_ U!+ P04    "  $@E]7IMH+
MJ&X"  !"!0  &0   'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6R%5%U/VT 0
M_"LK%U4@4>PX@1;J6 )2! ^HB!105?7A8F_B$V=?>K=.2']]]\[&=5&@+_9]
M[,S-C+V7K+5YM 4BP5.I*CL."J+E21C:K,!2V .]Q(IWYMJ4@GAJ%J%=&A2Y
M!Y4JC*/H*"R%K((T\6LW)DUT34I6>&/ UF4IS.8,E5Z/@T'PO' K%P6YA3!-
MEF*!4Z2[Y8WA6=BQY++$RDI=@<'Y.#@=G)R-7+TON)>XMKTQ."<SK1_=Y"H?
M!Y$3A HS<@R"7RL\1Z4<$<OXU7(&W9$.V!\_LU]X[^QE)BR>:_4@<RK&P:<
M<IR+6M&M7E]BZ^?0\65:6?^$=5L;!9#5EG39@EE!*:OF+9[:''J .'X%$+>
MV.MN#O(J)X)$FAB]!N.JF<T-O%6/9G&R<A]E2H9W)>,HO1#2P+U0-<(U"EL;
MY,3)P@>8\O?/:X6@YW!::D/R-^9PKBV!J'+H 2]1Y4 :K@751M(&IIBY@40+
MLPU#*C*<?BW4WY+="9*0:@]V0%;PK="U95:;A,2FG+0P:PV<-0;B5PQ,,#N
MX6 ?XBB.X6XZ@=V=O7]I0LZD"R;N@HD][_#_P4RDS91VV5CX<3JSWLW/;5(;
MRM%V2M=?)W8I,AP'W$ 6S0J#]/V[P5'T^0W!PT[P\"UV#F)&_>2[J!\D%9SQ
MUPKA.PKSXF-NL]$<=.0/<EV]2@=1%!\?)^%JB\!1)W#TIL!.$/]0FL5LG!AM
M0*&U^_#%DN0FP_Z?M4W;:)NV83Q\H2WLM82[7:Z%6<C*\F%S!D8''P\#,$W'
M-A/22]\E,TW<<WY8\"6'QA7P_EQK>IZXQNNNS?0/4$L#!!0    (  2"7U=P
M8%0;>P,  )$/   9    >&PO=V]R:W-H965T<R]S:&5E=#,X+GAM;,U7VV[;
M.!#]E8%:%"V01C?+E]06T"0(MD"R".)M]V&Q#XPTMHE0I$M2=@OLQR\I*;+4
M*G(#J$!>+%*:<S3G<$0/YWLA']0&4<.WC'&U<#9:;\]<5R4;S(@Z%5ODYLE*
MR(QH,Y5K5VTEDK0 9<P-/&_L9H1R)YX7]VYE/!>Y9I3CK0259QF1W\^1B?W"
M\9W'&W=TO='VAAO/MV2-2]2?M[?2S-R:):49<D4%!XFKA?/1/[OP1Q901'RA
MN%>-,5@I]T(\V,FG=.%X-B-DF&A+0<QEAQ?(F&4R>7RM2)WZG1;8'#^R7Q7B
MC9A[HO!"L+]IJC<+9^I BBN2,WTG]G]@)2BR?(E@JOB%?17K.9#D2HNL IL,
M,LK+*_E6&=$ &*'=@* "!+\*""M 6 @M,RMD71)-XKD4>Y VVK#90>%-@39J
M*+?+N-32/*4&I^,K0B5\(2Q'N$&B<HEFC;2"][ T%9/F#$&LX(IRPA-*&!"E
MT#PF/(55?9-1<D\9U1059"5+"D3#RI+O"G*[8F;9DUQ*RM?6>:K@[25J0IEZ
M9U[W>7D);U^_@]= .?RU$;DR[U!S5QN1-E4WJ02=EX*")P0M<7L*H7<"@1>$
M'?"+?O@E)@;N%_"@#7>-M;6_0>UO4/"%1_T]@8\'[ZX;CMT\.F8\NJL=LE%_
M"GZP[+RP[)]K\P+XI#%3_W:94V8SZL[&[@EG:DL27#CFHU<H=^C$;U[Y8^]#
MEU4#D;6,"VOCPC[V>+D14K_7*#-(!-?& 5.7=JAHBI+8/:!+?TDZ+DCM%K:+
M_2":SN;NKBFL(RJ<15X=U<IX5&<\ZLWX6O#U\Q,N.:-6*I/HQX1_CHK\J!'5
M2CBJ$XYZ$[X1'+_##9$/J+M2ZT4_MY8&(FL)'=="QR_J(QP/:=Q 9"WC)K5Q
MD]X**<TZ:6SD77(G/Q5G.)V-)N$/-=P1-@IGP1-%/*U3G/9_=;A#!C[\!\?*
MN9?GN:LR$%E+\JR6/'M1Y3P;TKB!R%K&^=ZAV_$&*.B*Y&A%=\7UE+3?:,K\
M7RCJKO;EO!_YW-48BJVM\] <^2^K._(';8^&8FN;=VB0_-_2(56LT9$6J2OL
MZ1[)/S1)_N_HDBK2\9$VJ2.LJT]R&^<E>U@U_QEKRA4P7!F<=SHQJF5Y_BLG
M6FR+(]2]T.9 5@PWYLR,T@:8YRLA]./$GLKJ4WC\/U!+ P04    "  $@E]7
M)FF5)E@#  "@#@  &0   'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6R]EVMO
MTS 4AO^*%28$TF@NO6VCC=0N3$QBHEK%^(#XX"6GK37'#K;3;O\>V\FR!M*(
M2F%?6M_>USZ/<YQXLN/B06X %'I,*9-39Z-4=N&Z,MY BF6/9\!TSXJ+%"M=
M%6M79@)P8D4I=0//&[DI)LP))[9M(<()SQ4E#!8"R3Q-L7B: ^6[J>,[SPVW
M9+U1IL$-)QE>PQ+4MVPA=,VM7!*2 I.$,R1@-75F_D7D>T9@1]P1V,F],C*A
MW'/^8"K7R=3QS(J 0JR,!=9_6[@$2HV37L>OTM2IYC3"_?*S^Y4-7@=SCR5<
M<OJ=)&HS=<X<E, *YU3=\MUG* ,:&K^84VE_T:X<ZSDHSJ7B:2G6*T@)*_[Q
M8PEB3^ /#@B"4A#\*1@>$/1+0?]?!8-2,+!DBE LAP@K'$X$WR%A1FLW4[ P
MK5J'3YC9]Z42NI=HG0JO,!'H#M,<T U@F0O0FZK0!S1+$F)V!E-TS8KGR^S3
MNP@4)O2]'O%M&:%W)^_1"2(,W1!*=;^<N$JORGB[<;F"RV(%P8$5]-$-9VHC
MT2>60-*@C]KUYRUZ5].HD 3/2.9!J^$L$SWDCT]1X 7]IGC:Y1'$/=3WK3QH
M"J==OH1,R[VFV6O1]*L-[EN__B&_(J'1UQ5:DC4C*Q)CO<&S..8Y4X2MT8)3
M$A.0Z,<7K477"E+YLV'A\V*B0?-$YH"ZD!F.8>KH$TB"V((3OGWCC[R/31"[
M-(LZ,JL!'E2 !VWNX2(7\4:?/(BOD!(VAYZ0SMOXH8EAJ]>Q# NSD34S!_PV
M]#UOXF[WT70T80W-L$(S;$4SV^HC)(%3?8+$O28:K?)C:71I%G5D5L,VJK"-
M7BME1UT"[M(LZLBL!GA< 1ZW/I?S7.H6*5',TWO"BC=;S"U;\_;31:F?6V$[
MFK"VVA^+M4NS:/SWD1 ,JR.A1NNLHG762NN*PN.<</DD#R=RJ\.Q0+HTBSHR
MJY$[K\B=OU8BGW<)N$NSJ".S&F#?>_E\]?YO*I?^9WL9,^J-ZB_1R_9%'$NL
M=-M/TD'P1XZZ>Y_T*8BUO1J9*/6#4WS=5ZW5]6MF+QWNR_#B[G:#Q9HPB2BL
MM-3KC?6[3137H:*B>&8O"/=<Z>N&+6[T%1*$&:#[5YRKYXJ9H+J4AK\!4$L#
M!!0    (  2"7U<D<:KK P0  #\3   9    >&PO=V]R:W-H965T<R]S:&5E
M=#0P+GAM;,U8;8_:.!#^*U:N.K52=_-*%O8 :2&I6JE[6BU]^7"Z#R89P&IB
M4]N!]M^?[80LH2%=>CGIOH#?YAG/,^-Q/.,]XU_$!D"B;WE&Q<3:2+F]M6V1
M;"#'XIIM@:J9%>,YEJK+U[;8<L"I$<HSVW.<T,XQH=9T;,8>^'3,"ID1"@\<
MB2+/,?\^@XSM)Y9K'08>R7HC]8 ]'6_Q&A8@/VX?N.K9-4I*<J"",(HXK";6
MG7L;NT; K/A$8"^.VDB;LF3LB^Z\2R>6HW<$&2120V#UMX,Y9)E&4OOX6H%:
MM4XM>-P^H+\QQBMCEEC G&6?22HW$VMHH116N,CD(]N_A<J@@<9+6";,+]I7
M:QT+)860+*^$U0YR0LM__*TBXDA X;0+>)6 =RH0G!'P*P'_N1J"2B!XKH9!
M)6!,MTO;#7$1EG@ZYFR/N%ZMT'3#L&^D%5^$ZD!92*YFB9*3TS>8</0)9P6@
M>\"BX*"B0 ITA18J)M,B \16Z!$21A.2$6R\JT;D!M!\@^D:$*&F=X2DYN>,
M2J)FJ=1-05+@I>P5BC&G*F31RP@D)MDK-?1Q$:&7+UZA%QKLPX85 M-4C&VI
M+-3[M)/*FEEIC7?&&A_=*[T;@6*:0MHB'W7+CSKD;<5L3:]WH'?F=0(N8'N-
M?.<U\AS/;]G/_/GB7ILY_TY[_,O:&V3X=:SY!L__::R]1G="@ HSY6;TGN"E
M"BU)0!QB,$4J4E30%9RK(#*K_F24UP,S+(A ?[U7"M [";GXNRU6RMT$[;O1
M&?A6;'$"$TNE6 %\!];T]]_<T/FCS5%]@D5]@L4]@35<&M0N#;K0IP_XN\X7
M^L0G3R<^:9QX*,][FX=*\-" ZRMM-[WR V^D@FUWS'W+,L]W1LU541N8ZX5A
M<UG<LLQ5; 3UL@81@YJ(02<1Y_)=F]6=2)?&99]@49]@<4]@#7>$M3O"_U6J
M"?MT:9]@49]@<4]@#9?>U"Z]Z3QA,YQAF@#"0F>;"!+(E\"1[YZ]'6>=@)=Z
MI4^PJ 0;'"6A<# XS6AQ3RH;= ]KNH>==-\E7PLBB,G@*9: 5OI([0[?=[^2
M[3L57NJ./L&BX8_N"/V36RCN26/#&Z/:&Z/_\I[M!+^4^3[!HM$/S%^YP<"[
M.>&^)YT-[EWGZ8WD=+*ODHUZA OSU+GL&+2_83JU7>J.7M&B"FWPLZ^HOK0V
M/7+T:G4ON S40T56MX&#SKYV9A7F\:>?%_K!\.1KLUOUQ80^2VG<E]*23_NH
M() #7YM*C% A6E!9OM?JT;K:<V=J'"?C,_=V[K:,1[HZ9 H03_!E:>D>\S6A
M F6P4JJ<ZQL52KRLUI0=R;:F'+%D4K+<-#> U<'1"]3\BC%YZ&@%=<UL^@]0
M2P,$%     @ !()?5[8'P42Z!P  OT$  !D   !X;"]W;W)K<VAE971S+W-H
M965T-#$N>&ULS9QM;YLZ%,>_BI4[39NT-3R8/'1MI+7==">M5U5[M[V8]L(A
M3H+&0X8A::5]^&L#P4#)2>&:CKWHPL,Y]OG;Q_QR@)SM@O G6U,:H7O/]=GY
M8!U%F]/AD-EKZA%V$FRHSX\L@] C$=\,5T.V"2E9)$:>.S0T;33TB.,/9F?)
MOIMP=A;$D>OX]"9$+/8\$CY<4#?8G0_TP7['K;-:1V+'<':V(2MZ1Z,OFYN0
M;PUS+PO'HSYS A^%='D^>*^?7ED389"<\=6A.U;XC$0H\R#X*38^+<X'FN@1
M=:D="1>$_[>EE]1UA2?>CU^9TT'>IC L?MY[_Y@$SX.9$T8O _>;LXC6YX/)
M "WHDL1N=!OL_J990);P9P<N2_ZB77:N-D!VS*+ RXQY#SS'3_\G]YD0!0/=
M/&!@9 9&U0 ?,# S _.I!C@SP(DR:2B)#E<D(K.S,-BA4)S-O8D/B9B)-0_?
M\<6XWT4A/^IPNVCVD3@A^DK<F*)K2E@<4CZH$4-OT1V?8HO8I2A8HLO CQQ_
MQ8^(C\Q9T) DP_:!A#Z?3>C#_88/)(H"-*?HEOZ*G9 NQ":?.!'W\<FWW7A!
MT9VS\IVE8Q/NZ8L?S!D-MV2>G+")>;.OKFA$'/<U;_]@FV_1E[LK].K%:_0"
M.3[Z=QW$C/@+=C:,N" BK*&=!7^9!F\<"/Z.;DZ0J;U!AF:8->97L/D5M;FY
MGI@;9?,A'X9\+(Q\+(S$GWET+-Z@]XQ1K@>/"WUVR-QQG<BA;#]&"\1UN*5V
M'(9<HN2L?P(_S'=<$.8P]/TS;P!]BJC'?M2)D_8&U_=&+#BG;$-L>C[@*XH8
M*#J8O?Q+'VGOZJ12Y*PDG)D+9T+>9P6%WJ"E4'$K5*R+.74T2AR)-7$[,T8F
MGIP-M\5@'I\ULBQMFI]5ZB7.>XG!7M[2+?5YGHG1^AJXL4?%./&QO"$/:=+]
M1M=\TE-T24*7IX[CQ6XZY7^CXMS(![XN0+ /30=5D;.27%8NE]6K;+!4"J?(
M64FX42[<2%4VC![-<QV/M$HR@*VUC&6<QS)^YISA^_<7K2N'V4',KR^W)*J5
M!^Q;TRFAR%E)QDDNXZ17N311*9PB9R7AIKEP4W#^?4NXD:M"MAP_5A0M]G,F
MK)\S%["_[WJM7JG1M)"'VHDVLBJ)"+IN*82N25#4GC\5N2-^"I^"#[7T!O:H
MZ3Q2Y:VL7P&T]5[E8-8=5>(I\E863Y*Q#O)CBSP\XO! (F96Y4PT]'$E$V'G
M;=60N*O#O-M)*NZ=OB3>YMW>[=%+)-S3QK-,D;>RKA+0==RO%%4*ZZJ\E<63
MN*Z#4-LF16&'AU+4JKM83HQJBG:!X+ID<!V&\&OBQTMB1W$R'<111.\W)*F7
MJ?FB!W>@\>3I@O)UB?GZN%^9IQ3M57DKBR?A7@<1>'83!O-4IP=1K&.Q;5-6
M7PY+'0D2DM_XJHG3!6_K$KAUF)#5)@[?7U'G#E!'$6!G.G:!ZX;$=4/K5489
M2EE=E;>R>)+5#1!G6US+CC@\<"W+K,!\A#VWE:)0DX9!^5@^%M+K;2[;C>@)
M5RN]L?#]FGIS&OYH<G6#>]5X.G7!ZX;D=</L5RXJA7)5WLKB22@WX+)Y@W)F
MYJE8S[0LK5I&@=MK&X_D9 /&VF=(J"8U3KBWC>=*%]1M2.HV1OU*-*4,KLI;
M63S)X 9<:V]QT8,='KKHC6NKG68U3;N :D-"M0%#];7C<[KT"H61;N_;P=UI
M/)6Z@'A#0KPQ[5<>*B5W5=[*][(EN9MPH?WHDIW95Q.H"HYP,VW#D QMPL@+
ME_8SXW(,NODHAB[@UY3P:\+P6TS];9KZQQ;%2[.NA*Q9CR+KY(&)PA,3< E9
M+F]_"/#A_C5-657>RFI*1C7[53@VE1:.57DKBR>!V(2!^/AZ5UOQ?;S>=<&>
MIF1/\UC%]_Y9@0'N3N,YT 5[FI(]S7[5?TVE]5]5WLKB250U850]GD"3N@0:
M:]/2OVHZ=8&0ID1($ZX#'\&'NB<F##RJQM %R6%)<OCICTP\%1]P+=Q-J]^.
MX);;1B;A#L-P)Q>[/X0/</\:/^?8!69BB9FX7P_^8J7%557>RN))DL4PR1Y=
M_3+[*C[@:D9U@9"X\' P7.9\O^4#O4C7BH\NO;]P O:@Z)%@M<\$=T&+6-(B
M[M=CP5AI?525M[)XDE&QLD>#<<VSP5-S\N@ZU 4W8LF-&"XQ/OW6=^8(O-4&
M-]8V&,EQ&.8X14M HWO><)<:3^\NF!%+9L3]*CMBI65'5=[*;UM(6+5@6&U>
M_C_B\$#Y/[,"$Q'VW%8*2;<63+?J$O')M^'@'C5^_:0+GK4DSUK]XEE+*<^J
M\E863_*L!?-LBSR$'1[*PUHL/E(4@)MJJXV$9*LM),MR]O_&9;@/C6=3%[AL
M%5ZBZQ<N6VI?H^L"ERV)RQ:,R\=7[5&;'.H"F2V!S.4]DCLMF#OY E%^&=M)
M7\;>T9#R/]ER-'] T9JBD(J,VM+"UP>!F.*0+=_8MDMO;+O9;'LXJ8M@6'A[
MW:/A*OD5 (82Y=-W@/.]^2\-7"0OY%?W6^/32RY$W9$)/Y+\.,%0-I'^M,$U
M"5>.SY!+E[PY[63,YUR8_EI NA$%F^3]^7D018&7?%Q3PH,3)_#CRR"(]ANB
M@?PW&V;_ 5!+ P04    "  $@E]7( /> &X%  !U(P  &0   'AL+W=O<FMS
M:&5E=',O<VAE970T,BYX;6RM6EUOVS84_2N$5@PMD$5?EA-GM@''4M< ZQ;$
M;?<P[(&6:)N()+HB%2? ?OQ(2=%'++,6=E]BB>(]),^A+GD43@\L>^0[0@1Z
M3N*4SXR=$/L;T^3ACB287[(]2>63#<L2+.1MMC7Y/B,X*H*2V'0L:VPFF*;&
M?%J4W6?S*<M%3%-RGR&>)PG.7FY)S XSPS9>"Q[H=B=4@3F?[O&6K(CXNK_/
MY)U9HT0T(2FG+$49V<R,A7T3.*X**&I\H^3 6]=(#67-V*.ZN8MFAJ5Z1&(2
M"@6!Y<\369(X5DBR']\K4*-N4P6VKU_1/Q:#EX-98TZ6+/Z+1F(W,ZX-%)$-
MSF/QP Z?2#4@3^&%+.;%7W2HZEH&"G,N6%(%RQXD-"U_\7-%1"M XO0'.%6
M<VZ 6P6XYP:,JH#1VX#1B0"O"BB&;I9C+XCSL<#S:<8.*%.U)9JZ*-@OHB5?
M-%43924R^93*.#%?A-]SRFDA&MN@CS%YOJ6,O_ +=)>&Z!>TB*+B*8YE03DQ
M5=WW/A&8QA]DC:\K'[U_]P&]0S1%7W8LYSB-^-04LGNJ$3.LNK(LN^*<Z(J+
M/K-4[#@*THA$/?&^/GZBB3<E+34WSBLWMXX6<+'/+I%]=8$<RW'[QJ,/7Y']
M)7*MD^'^_PL/].$^"66X780[&C+<>J*X!9Y[ N\VY[*$<]2>,7__+LO0G2 )
M_Z>GB[<EY*@?4N7 &[['(9D9,LEQDCT18_[S3_;8^K6/;4@P'Q(L  +KZ#*J
M=1GIT.>_,18=:!SWT:^-'$I_"38NP-3R\S2_'D\<3\ZMIS:QYU4+>JIYGF>[
M=;4.&5Y-AJ<EHTE??71H8X?2 0GF0X(%0& = <:U &/X+#&&U 42S(<$"X#
M.KI<U;I<:5^,6I>0)6N:EFMXA 51BSXNM%)%?>KH@>LU\N0BJ8T?*@@D6  $
MUA'DNA;D6LM;("D7+U(.N>6.2(9/L7]]E"='MF59W6RZU+8UE&-(L  (K,/Q
MI.9XHN5XB?GNQPR7&%Z+86=RS+"VI:$,0X(%0& =AFVKL0_6>8EEV20691TB
MDJ1T0\,RTRPX)T):B@><;HN4\V<N9"8BLN@;CG-R@3Y)0]>G3M5\^P48NT?J
MZ#LY5!Y0M  *K2M0R]_96H%6.RQA%>>2\$1J(2UE^(@HYSF)D#1T5?JGI]Z/
M"K_]@KCVR/;>2J#MQF )SFHT@&JTRZW3<.MHN2WF[@EJ>ZETSLKF^E8'4PF)
M%D"A=1EO3*BM]5+]^QB9X@65B245/\[V%7Y[8HW'QPJ >LT*K2.[<R1[ -5H
ME]K&1]IZ(_D'$2BF>$UCF0IDQL!R&B<GYO'HB$1;3>2W+$+Z3Q\4+8!"ZY+=
M^%1;;U3[YO$%HJF0"R1=QT2Q+U?,7O*]8_*=GBD,:E!!T0(HM"[YC4>UM59K
M?M?07&Q,T .122/'<;D9Z25]W#/C>_8AH.X3%"V 0NN2WAA0>[@#O6CO/5!&
M8FE((UF!GYCYD.YO6:&U)?7>"NJ#-AE H74E:"RGK?><7S*<<AQ6:^8IDB'M
MW[)":Y,\.2;YC$H!5+^ZW#56TM9[2=UG5GWH8,HF1[L%F6H<^RUI9U4+H/K6
M_0=*8P\=O3UL/LBB?Y5%5+ODE=HE]_&HQQK*(RB:#XH60*%U56D\H6/#?Z5U
M( W>$A3-!T4+H-"ZZC2NTM&[RG,_#58PG05L=+0ET3<VF&A0,PF%UB6Z,9..
MWDP.M>_.L8_K(QS4.X*B!5!H)>%FZ]A!0K)M<=Y#;?#R5)0G$.K2^DS)HCA)
M83;5RP,IGW&VI2E',=G(4.OR2L[JK#SC4=X(MB\.,:R9$"PI+G<$R]=#59#/
M-XR)UQO50'W29OX?4$L#!!0    (  2"7U=?5'G5U 4  )8G   9    >&PO
M=V]R:W-H965T<R]S:&5E=#0S+GAM;+6:76_;-A2&_PKA%4,+Q+$^_)DE!A(+
M[0)L;="TW<6P"T8^L85(HDK2=@+LQX^B%<F49+9:3FX22=9Y*3[F(=]#ZWS'
M^(-8 TCRF,2IN.BMI<S.!@,1KB&AXI1ED*I/[AE/J%2G?#40&0>ZU$%)// <
M9SQ(:)3VYN?ZV@V?G[.-C*,4;C@1FR2A_.D*8K:[Z+F]YPN?H]5:YA<&\_.,
MKN 6Y-?LAJNS0:FRC!)(1<12PN'^HG?IG@6^#M!W?(M@)PZ.2=Z5.\8>\I/K
MY47/R9\(8@AE+D'5ORTL((YS)?4<WPO17MEF'GAX_*S^7G=>=>:."EBP^*]H
M*=<7O6F/+.&>;F+YF>U^AZ)#HUPO9+'0?\FNN-?ID7 C)$N*8/4$293N_]/'
M L1!@#L\$N 5 =[/!OA%@/^S <,B8*C)[+NB.014TODY9SO"\[N56GZ@8>IH
MU?THS;_W6\G5IY&*D_/+\/LF$I'^#M@]>1_#XU7$Q),X(==I2/KD/8TX^4;C
M#>2??U0C\5((D(+H2 Y+\C8 2:/XG;KYZVU WKYY1]Z0*"5?UFPC:+H4YP.I
MGC1O;Q 63W6U?RKOR%/=0G9*?.>$>([GMX0O[.&7&3\E[N1H>& /#R!4K;LZ
MW#/#!PIOR=@K&7M:SS^B=[41ZHHHD!6P__Y#72/7$A+Q3QN@O>2P73*?#<Y$
M1D.XZ*ET%\"WT)O_^HL[=GYKPX4I%B")&2C]$J5O4Y]_8&RYB^*XC=@^<JPC
M\^EN.Y^.9]Y(?8/;0Q;6!KJR:&ES-!JY?MFFT<MAV<NAM9=5%K;UTQK;=61@
MB@5(8@:S4<ELA)]D(TR4F&(!DIB!<ERB'%N'WX**-5$3-PGS U XMS2&5+:.
MQKW4Z" #7&?FU'+.VEY7-$AB!II)B69B17,9AFRC2"C+$X+"<A=#&Y1) \IX
MZM>86!OJR@1)S& R+9E,K4RNTZT:'(P_M9&8-DF,)S425OFN))#$#!*SDL3,
M2N*&0T:C)8%'9<L%")U$3*Z!*RO'N:)$J#9/;:1F#5+^J ;*VGI74$AB!BC7
MJ6RG\P-4JG3A\DDCRJ>83!43LM4I.LT9QG/\88V-O;VN<+#43#H'IMRUTOFD
MV% 9I2L2@RIJ",^KE]Q_;]2)'D*MI-R6(>37L\W>=&=02&HFJ,I9NU:W6:WZ
M(4ONHI3FJ_Z)*CXD35>1FIPM^697[KKX%VIC8Y2.G=I"&& U:N*JW+/[_^US
M$6KDV=#WW/KP0?7/6&HFC\IGNW:C_4G/S3%+5WT)/+&-EF&+SZFC03736&HF
MFLI.NU:+63F=C#X=LSF%Q"&4ONN/ZUA0C3&6FHFELL:NW1LK+'P#2Q)']"Z*
M594![<.E:8O[OMM8LU!],9::2:9RQJ[=&M?7K&="K;;0;3KDOC^KXT&UR%AJ
M)I[*)+MVEWP4STDU_[22:CKHOC^<3>NL4$TTEIK)JK+1KMU'ZSW'[?.>8PK/
MMIG08L^Q%5330 ]=QV],TJ@F&DO-W%>L7+1G=]'51A'YERST;K%:SSC$V@B)
M=92USDYVU<Z;BZC.&TO-)%HY;\]]A;U:3$N]0%4+L-1,G@=;WZ]FT OEPX3V
M1HU\MK??F=9K^'.O\N>>W9\;^1S %F)5)2^)A'"=LIBM6M=2NV;GT8?J[['4
M3)Z5O_>&KY#-J!OLJ&H!EIK)LRH*/'M1\))L;M8*L^FXD<VHM0*6FDFKJA4\
M>ZU@9/,73I>04/Z@=[QD?I;2I+6LLLMV'H"H10:6FHFT*C*\R2LD-&8=L4!5
M"[#43)Y55>+9JY*7)'2S,&DNSJA5"9::R:JJ2KP?5"6'Z?R1I7W%+ .I&*TX
M0'+L!S*[:N?1AUJ^8*F9O^57Y8OOX&>SCUJ\H*H%6&HFSZIX\>T_&[P@FPOE
MP_UKSZNGL[WYSK!0*Y/!P3M0^1MK?U*^BE)!8KA7\L[I1$U4?/\2V/Y$LDR_
M%G7'I"J;]>$:U*K,\QO4Y_>,R>>3_$VK\E6\^7]02P,$%     @ !()?5Y-*
MXA>& P  KPX  !D   !X;"]W;W)K<VAE971S+W-H965T-#0N>&ULM5=A3]L\
M$/XK5C9-(&TD=MM0>-M(%(:&M$UHC.W#]'XPR;6Q2.S,=EKX][.3D)0M=:5"
MO[2QXWON.>?QG6^R$O)>I0 :/>095U,OU;HX]7T5IY!3=20*X.;-7,B<:C.4
M"U\5$FA2&>693X(@]'/*N!=-JKEK&4U$J3/&X5HB5>8YE8\SR,1JZF'O:>(;
M6Z3:3OC1I* +N %]6UQ+,_);E(3EP!43'$F83[TS?#HC@36H5OQ@L%)KS\B&
M<B?$O1U<)5,OL(P@@UA;"&K^EG .66:1#(_?#:C7^K2&Z\]/Z)=5\":8.ZK@
M7&0_6:+3J3?V4 )S6F;ZFUA]@B:@D<6+1::J7[1JU@8>BDNE1=X8&P8YX_4_
M?6@V8LV D T&I#$@%>_:4<7R@FH:3:18(6E7&S3[4(5:61MRC-NO<J.E><N,
MG8[.XM\E4\SND!)S=)G!PXP)]:C>HRL>HP_HH]+,! \)NE4P+S/TF<T!49Z@
M2\HD^D&S$M#!!6C*LD.SOD- ;Q'CZ'LJ2F66JXFO#5_KU8\;;K.:&]G [01]
M$5RG"GWD"23/[7T39QLL>0IV1IR -U <H4'P'I& #-#MS04Z>'OHP!VTFSBH
M< <;<&>E,C-*H;7=1+\^FSETI2%7__?%7D,.^R'M83Q5!8UAZIG3ID NP8O>
MO<%A\)^#\+ E/'2A1]VGZV-6VX:5K3W5RPB3<!A,_&6/RU'K<N1T>5YI&:0Y
MRAFMY):RHE<43IP=-R9L68:O_R7#/1 ^;@D?.[?U9Y5VS.D\6X(T:?39*3TP
MY^\1J%2'?;3=P)C4I@Z.XY;C^ 5J&_^C-C(:;!#;2>OQQ.GQ I:FWA1F6S3$
M*1>96#SV^7:B[/CE<-"EWN#UQ=9@OC+GM7*!]Z6W+<@XW"HX3#J:Y 62:XS7
M-7<R#C=H#G=5 #MS=O1=TL3<F>1]51ZU'7&:]S/81_;'7?K'PSTHSUE3=N7<
MU0_L+B O49X;>;A=>%W]P,YLOTUXX3_"VY3J<%<!L#M3?Q7\0RSR K2YERTD
M@+DTZ_[KEA-HUR_8E0$\WH/JG+5E5\Y=(<'N2O(2U;F11UM51[I*0IQ9?XOJ
M&N-G)9;\+3M_K8<PU[1%U2DI%(N2Z[J=:&?;;NRL[D&ZY74K]X7*!>,*93 W
MIL'1L3E^LNZ.ZH$61=61W EM[H358VHZ2I!V@7D_%T(_#:R#MD>-_@!02P,$
M%     @ !()?5Q<("=[) @  <0D  !D   !X;"]W;W)K<VAE971S+W-H965T
M-#4N>&ULK591;YLP$/XK%JNF5EH+@81N'4%JPZIU6J>H6;>':0\N7()58S/;
M).V_GVT(2U1*FRDO8)O[OO-]=_@<K;BXESF 0@\%97+LY$J59ZXKTQP*+$]X
M"4Q_F7-18*6G8N'*4@#.+*B@KN]YH5M@PIPXLFM3$4>\4I0PF HDJZ+ XO$"
M*%^-G8&S7K@ABUR9!3>.2KR &:C;<BKTS&U9,E( DX0S)& ^=LX'9TEH[*W!
M#P(KN3%&)I([SN_-Y"H;.Y[9$%!(E6' ^K6$"5!JB/0V_C2<3NO2 #?':_9+
M&[N.Y0Y+F'#ZDV0J'SOO'93!'%=4W?#59VCB&1F^E%-IGVA5VYYJX[22BA<-
M6.^@(*Q^XX=&APV YND&^ W ?RT@: #!:P'#!C"TRM2A6!T2K' <";Y"PEAK
M-C.P8EJT#I\PD_:9$OHKT3@5WX!4HDI5)0A;H"G%#!VC\RPC)BN8HBM6EY;)
MT6$""A-ZI"UN9PDZ/#A"!X@P]#WGE<0LDY&K])8,L9LV[B]J]_XS[@?HFC.5
M2_2)99!UX"?]^. E?-*/_]"#=[64K9[^6L\+OY?P2T5/4#!XAWS/#[KBZ8?/
MH-1P[UEX\M_PK6B"MCH"RQ>\JCHF7"JD\XST,H@EH%]?M3VZ4E#(WUVYK\F'
MW>3F0#N3)4YA[.@3RS(Z\=LW@]#[V"7</LF2/9%MB3IL11WVL<??.#M.L<SU
MK[,$IKAX1"M!%!SS^;Q+Q9HMM&SF%%_&_L#SO,A=;LK3ZW-7>?9$MB7/J)5G
MU"O/=LVE.18+Z#Q9>FEVK:Y]DB6CIQD+-S.VI4O8ZA+NH(OY%SM5Z279597P
M:2!#;^!OEU[RDE4=KKO1I K0237-7J*45TS5_:I=;>\3Y[:-NO_,Z\O(M:X)
MPB2B,-=0[^14"R[J!E]/%"]MR[OC2C=0.\SUG0B$,=#?YYRK]<0X:&]9\5]0
M2P,$%     @ !()?5W[-(.30!@  "SH  !D   !X;"]W;W)K<VAE971S+W-H
M965T-#8N>&ULM9MMCYLX$,>_BI6KJI[4-L$&DFVSD;;;5E?IJJZ:]OKB="]8
M<!)4'G+@[':E^_!G"!MC( .TXS?=D(S_'L],T<\>6-ZGV?=\Q[D@/^(HR2\G
M.R'VKZ;3W-_QV,M?IGN>R%\V:19[0EYFVVF^S[@7E(/B:$IG,W<:>V$R62W+
M[VZRU3(]B"A,^$U&\D,<>]G#&QZE]Y<3:_+XQ>=PNQ/%%]/5<N]M^9J+K_N;
M3%Y-3RI!&/,D#].$9'QS.;FR7EV[Y8#2XJ^0W^>USZ18RFV:?B\N/@27DUGA
M$8^X+PH)3_ZYX]<\B@HEZ<>_E>CD-&<QL/[Y4?U]N7BYF%LOY]=I]"T,Q.YR
MLIB0@&^\0R0^I_=_\&I!3J'GIU%>_DON*]O9A/B'7*1Q-5AZ$(?)\:_WHPI$
M;8#4Z1Y JP%TZ !6#6#E0H^>E<MZZPEOM<S2>Y(5UE*M^%#&IAPM5Q,F11K7
M(I._AG*<6'WFN<@.OCAD8;(E-Y&7D!=D?<PI23=$__VJ"'HH0IZ3VP?RY6'/
M"YOK-!?DV5LNO##Z70[_NGY+GCWYG3PA84*^[-)#[B5!OIP*Z6\QZ]2O?'MS
M](V>\8V1CVDB=CEYEP0\Z!A_#8^_ ,9/99Q.P:*/P7I#0<$UW[\D;/:<T!EE
M7?[\]'#-'7;*'2OUV*#<E5F0@2Y2QK,[3O[^4]J3#X+'^3]=P3^*V]WBQ>WC
M5;[W?'XYD?>'4G&R>OJ;Y<Y>=ZT<24R+@WV*@PVI=\2AL]B.(FXI4MS=[E;4
MGEET.;VK+Z3/2O/0.7GH@!ZN^1W/O,3GY*D7[U\3'N^C]('S%QF//,$#XI]S
M&M0=FR0D,2T$[BD$KLEB=3'C@"2FQ6%^BL,<HUB/(DZ]#!=LUJC5'B/-O\7)
MOP7HWX?DCB<BE7?_;UDH^(M/FTV7?Z#(V'P@B6GKO3BM]\)D75Y@Q@%)3(N#
M-5,D,,.HS$JE7G76W%HXC=KL-=.]K/&*!7IYY?N2 ;/RKAEP&0@_] H@['05
ME!J;'2PU?>%4+9R:+-1*'2L62&IZ+!3X6"!/#"Y5UJI!MK#<9J7V6.D^*BBQ
M8"IY[_EA%(J',DN?Q(YGY-V/4 #>@GJC,X2DIJ]> 8_E&*U65.[!4M-CH<C'
M H%B<+6Z[3OFPFH6*VRD>ZB8Q(*AI,R/W,GMLS20CLK]N82  ^_T$E0:G1DD
M-7W=BG6LA=$J1:4@+#4]%HJ#+! O!E?I11LZZ=QJU6F?F;X!5Y!"84@Y4ZGD
M/_+S>RQXRK%IQ%+3 Z3XB%HF2YJB(A.6FAX+A4P4Q)"A)5VI:/=4U[$;%=UG
MI?NH4(;"*'.^H ?NQ&#]T1DS<9!#%311VVCUHB(4EIH>"X50%#XT&EJ]SJ#]
M6*^9[J6"&PK#S?GZ';-3@R<9G3@3!SQ4T12=&RUB5,+"4M-CH0B+PL=)0XMX
MT=Z#S1>+9@WW6.D^*O*A,/F<+^'1>SAXIM&Y,W$@Q!1KL9G1_@(J5F&IZ;%0
M6,7@8Z>!=5RIU"MTT00)V$;W3Z$.ZT4=[F7^KLQ0( LX2O>QQ(=.)U&/@K#4
M](77>F!FFV"X73 3],04/3&41EBEHMU&F[@ V^C^*:)AO4336:2_M'N#YQR=
M01-'14S1%#/:)6.H&(6EIL="811#Z92Q=A>,M6ZYH(WNGT(;UHLVYZIYX-8-
MGF!TNDR<'S%%4<QH(XVADA.6FOX\@B(G&Z659K=[9,T6+VBB>Z=8QNYEF7.%
M.V;/!L\R-F-8:GI,%#_91KMK-BI28:GIL5!(9:-TU^QVWZQY"@R:Z-[5'O;I
MA9QSU3MZNP9/-3IM)LZ+;$57MM&6FXW*45AJ>BP41]DH+3>[W4UKW8 A$]T[
M138V3#9K'LFOML_)EB?R9AN5>?*".$Q"Z;97/-C:Z2WJP1"6FAX#14^VT=:;
MC8I.6&IZ+!0ZV2BM-[O=4[.HVWR<H<]*?X!1(8T#(\V FOVE;1P\_>@G'4V<
M%CF*L!RC33@'E:RPU/18*+)R4)IP3D=[S;*;3^?V6>D^*N)Q8.(95MP#=W7P
M7*.S9^)(R5&TY1AMR#FH@(6EIL>B]A W2D/.:7?:FE !FNC>*>1Q8.095L-C
M-GCPA*.39^(TR5',Y1AMRCFH[(6EIL="L9>#TI1SVNTV.F]6,FBC^Z=XR(%Y
M:%@IC][MP;..SJ&)(R97\9AKM#GGHN(6EIH>"X5;+DISKE*IO]MST:QGV.;H
MW[3VNEW,LVWY%F(NT?:0B..;=Z=O3V\Z7I7O]TV5^?$UR8]>M@V3G$1\(X?.
M7L[E?Z3L^.;A\4*D^_+EO=M4B#0N/^ZX%_"L,)"_;])4/%X4$YS>_US]#U!+
M P04    "  $@E]7IP=G)\8$   2'   &0   'AL+W=O<FMS:&5E=',O<VAE
M970T-RYX;6RU65UOXC@4_2M6=C2:D98F=OCL %)+=[259G:KLK/SL-H'-[E
M-$G,V@;:?[_.1Q,"X4(TZ0LDX=[#N=?F^&"/=T+^4"L 39ZC,%83:Z7U^MJV
ME;>"B*LKL8;8?+(0,N+:W,JEK=82N)\F1:'-'*=O1SR(K>DX??8@IV.QT6$0
MPX,D:A-%7+[<0BAV$XM:KP\>@^5*)P_LZ7C-ES '_6W](,V=7:#X002Q"D1,
M)"PFU@V]GKEI0AKQ=P [M7=-DE*>A/B1W-S[$\M)&$$(GDX@N'G;P@S",$$R
M//[+0:WB.Y/$_>M7],]I\::8)ZY@)L+O@:]7$VMH$1\6?!/J1['['?*">@F>
M)T*5OI)='NM8Q-LH+:(\V3"(@CA[Y\]Y(_82&#N1P/($=FF"FR>X::$9L[2L
M.Z[Y="S%CL@DVJ E%VEOTFQ331 GPSC7TGP:F#P]?02EY<;3&QG$2_(0\IAT
MR#P;4R(6Y"9I<Z!?R".$7(-/M" U.1_N0/,@_$C>D2 F?ZW$1O'85V-;&X[)
M-]E>SN<VX\-.\'')5Q'KE2*_Q3[X-?DS/'^$Y-NF-T6#V&N#;AD*.(?U%7&=
M7PESF$N^S>_(AW<?ZWC]-$R%GEN,GYOBNA>-WTPH34SCDR$"N07RSQ<33^XU
M1.K?NL'(P+OUX(F$7*LU]V!B&8U($:WI^U]HW_E4UX&6P"I]Z!9]Z&+H-7VH
MG7P92#\%211N.V5=A[*QO=TOY%Q4A6&O8-A#&=Y$8A-K11YX4#>O;]'LID.1
M@?7V*NBP?G=47T&_J*"/5O"'B#LSKE8' I#.KKJ*4+2F%?5K*J*,]>I+&A0E
M#1I,FR\!?PI"HW9UU0R."%!W>#!Q\)@*PV'!<(@RG,,6)(\](.]YM/Y$(%J'
MX@6@(W-!]D[-=12W:?M; JNT8%2T8/26&C=JLP\M@57Z0)URL7;:4+D<97\>
MLJ'K'$S6<U%5CGN&@OZ4SN'I3<<C1ZOJ0G=PXD='65D%:U7K<+C&5;$ZM>N>
M**KT"A1=@INH78Z$R]V9H"K+<B6G^%)^'V\AUL+XS^\RT-#Y<[&H98BB-.YX
M2VC5FDMO0'MO*7&T5?/0%EJU%Z7+H+C-N%3DCAT!'=!A[W".G@NKLBR- \6=
MPUF90],;#\FQLS@EU*6QH+BS:"QQK1J*'*TB<=C E&:!HFMP(Y$;(5W-:6(A
MU3^4Y2K.\%7\QO,@-*8N<6\^F&9Y 4_V-.HHXE!-F]X66K7PTAHP^I8JQUIU
M#FVA57M1&@R&&XP+58X=.P%W2/L'L_1<5)5CZ1<8[A?.:1R>WGA CMW$J9]:
MZ248[B6::AP.U[BB[K'&(>-2N@6&;R4TD#AVO!-P*'%H2)5AN88S? W_S+V4
M$H'G(/N1"[T"F=V>_,>*@S;N?DMHU1:4!H$-WE3L6O4/;:%5>U%:#89;C4O%
MKE6'P8X=!AW2$S.[M!<,MQ=G-;'5[09V;#\2EU1?A%LZ$!=W($UE$8=KO$]\
MO/'0H2<DQRW-A8OO.S00Q1RICX@B&I(QM/=.72*0R_0P2AEU,_,C.X IGA8'
M7C?I,8]=AF>G95^Y7 :Q(B$L3*IS-3"]D=D!5':CQ3H]PWD26HLHO5P!]T$F
M >;SA1#Z]2;Y@N(8</H_4$L#!!0    (  2"7U? ZP4D;0,   X0   9
M>&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;+5878^;.!3]*Q8[JEJI'3Y#DFF"
MU!E8[4A;=92TW8>J#QZX 52PL[:3=/[]VH8P"6&BZ8[[$K YY]CW7NO S6Q'
MV0]>  CTLZX(GUN%$.LKV^9I 37FEW0-1#Y9459C(8<LM_F: <XTJ:YLSW%"
MN\8EL:*9GKMCT8QN1%42N&.(;^H:LX=KJ.AN;KG6?F)1YH50$W8T6^,<EB"^
MK.^8'-F=2E;60'A)"6*PFEL?W*O$=11!([Z6L.,']TB%<D_I#S6XS>:6HW8$
M%:1"26!YV<(-5)52DOOXMQ6UNC45\?!^K_ZG#EX&<X\YW-#JGS(3Q=R:6"B#
M%=Y48D%W?T$;T$CII;3B^A?M6JQCH73#!:U;LMQ!79+FBG^VB3@@2)UA@M<2
MO#XA>(+@MP3_N2L$+2%X[@JCEJ!#MYO8=>)B+' T8W2'F$)+-76CLZ_9,E\E
M40=E*9A\6DJ>B!:P!;(!M("4YJ34Q7N'ELVQ072%XI+C/&>08_U,SNPIKV,0
MN*S>2/R798Q>7[Q!%Z@DZ'-!-QR3C,]L(7>HUK'3=C?7S6Z\)W;CHX^4B(*C
MA&20#?#C\_SI&;XM,].EQ]NGY]H[*[B$]27RG;?(<SQ_8#\WSZ=[0^&\;/7D
M?Z]^E R_.RN^UO.?T'OZ*'S[6T+1K8":?Q^J>J,;#.LJ+[SB:YS"W))FQX%M
MP8I>_>&&SONAE)L4BTV*)8;$CHH3=,4)SJE'GZG E;1N79"A&C3T4-/5ZV,;
MN8'K3N7!V!YF]Q0FWSGCP#V&Q:>P8.([7@^6G,)"-QB/@PYV%.NHBW5T-M8[
M1K--*O;';RC:LP*_>N),BL4FQ1)#8D=5"+LJA+_)#D*3Q3$I%IL42PR)'15G
MW!5G_#([:.BCGAV,PIX=G,*4'3B3GAV<PH*)-W6=GAV<PJ0=A.%DV XF7:R3
ML[$NZ .NQ .2WQSHDRB H5N2TGHP[+-*OWKT3(K%)L420V)'Y9AVY9C^)E^8
MFBR.2;'8I%AB2.RH.*[S^,'OO,P96O[A2]OOV\(0QN]YP@#&=?L?"$,@)^SY
M@7W0W]3 <MU8<I32#1'-YVLWVS6O'W3+UIN_=J]NW('Y6#6[NI]ZE&\ZY8^8
MY27AJ(*57,JY'$OS8DWSV0P$7>ONZIX*V:OIVT(V[, 40#Y?42KV [5 ]Q=
M]!]02P,$%     @ !()?5[5&$DL# P  - @  !D   !X;"]W;W)K<VAE971S
M+W-H965T-#DN>&ULK59=;]HP%/TK5E9-K;0U7Y"6#B*UH&E[F%1!NSV;Y(98
M=>S,=J#=K]^U$R+H4K2'OH _[CG<<^ZUS70GU9,N 0QYKKC0,Z\TIK[Q?9V5
M4%%]*6L0N%-(55&#4[7Q=:V Y@Y4<3\*@L2O*!->.G5K]RJ=RL9P)N!>$=U4
M%54O=\#E;N:%WGYAR3:EL0M^.JWI!E9@'NM[A3._9\E9!4(S*8B"8N;=AC?S
MQ,:[@)\,=OI@3*R2M91/=O(]GWF!30@X9,8R4/S:PAPXMT28QN^.T^M_T@(/
MQWOVKTX[:EE3#7/)?['<E#/OVB,Y%+3A9BEWWZ#3,[9\F>3:?9)=%QMX)&NT
MD54'Q@PJ)MIO^MSY<  (1V\ H@X0_2\@[@"Q$]IFYF0MJ*'I5,D=438:V>S
M>>/0J(8)6\654;C+$&?2)6Q!-$"6D,F-8,[:SV35UI3(PFX V](U!TVHR,D"
M"E *<K)'%DI69"Z%45@2C>F;DLQ=XJ T.5^ H8Q?(.GC:D'.SR[(&6&"/)2R
MT<BGI[Y!&389/^M2OFM3CMY(>07U)8F#3R0*HG@ /C\-7T"&\-#!HV.XC^;U
M#D:]@Y'CB]_@NZ.<B@S=<49DQT9DO1%2\)>;(;$M^VB8W1[B&UW3#&8>GE(-
M:@M>^O%#F 1?AJ2_$]F1$7%O1'R*/;W-,MD(5*[ZEAG2VY(DCL3>,=LT#))P
M?#WUMX=*!L+")!I=]6%'.8[Z'$<G<^R[5W7=>\Y$QIL<5YB]4S+5X) SNF8<
M#T/7\]*4H(B0(FL0+,Q1 .)PVQ8^Q\L-T3C2DK.<&IRLV^X@[H3JBR%#VHS'
M1TI'!T);/P:B)DD<#MLQ[NT8G^S=_1E6[>G_@PGGC6)B0VI03.::N#X1QCG&
MJ;%;1@[V\?@]^_B=R(Y,27I3DI,]\H#57,.&"6'5YJ\[IJOHD 7)OSV;3":3
M5Y4<B(KC2?"JDO[!G6[?TQ]484J:<"@0%UQ>H46J?:/:B9&UN^;7TN"5XX8E
M/NN@; #N%U*:_<2^'/T?A?0O4$L#!!0    (  2"7U?J<[F]\0(  (T(   9
M    >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM;+56;4_;,!#^*U:&)B8!>6D3
M6M9&:LO8D(:$Z& ?IGUPDVOCX=C!=EKX][.=-)219A+:OK1^>YY[[GSGRVC#
MQ;W, !1ZS"F38R=3JCAS79EDD&-YP@M@>F?)18Z5GHJ5*PL!.+6@G+J!YT5N
MC@ESXI%=NQ;QB)>*$@;7 LDRS[%XF@+EF['C.]N%&[+*E%EPXU&!5S '=5M<
M"SUS&Y:4Y, DX0P)6(Z=B7\V]2W GK@CL)$[8V1<67!^;R:7Z=CQC"*@D"A#
M@?7?&F9 J6'2.AYJ4J>Q:8"[XRW[A75>.[/ $F:<?B>IRL;.P$$I+'%)U0W?
M?(':H=#P)9Q*^XLV]5G/04DI%<]KL%:0$U;]X\<Z$#N (-@#"&I 8'57AJS*
M<ZQP/!)\@X0YK=G,P+IJT5H<8>96YDKH7:)Q*O[,>;HAE"+,4G3)%&8KLJ"
M)E*"DN@8S3*]!!(1AF98B"?"5N@.TQ(07Z(&?7@."A/Z 1V8@]\R7DI-*$>N
MTAJ-)3>I]4PK/<$>/4-TQ9G*)/K$4DA?XEWM6^-@L'5P&G02SJ$X03WO" 5>
MT$.W\W-T>/"A@[?7!*YG>7M_"]R/KWH'72K(Y<\V?RN:?CN-*;HS6> $QHZN
M*@EB#4[\_IT?>1\[1/8;D?TN]GB**68)M,FJ@)$%FM)=QX,P#/W>R%VW& P;
M@V&GP5F9EQ2;0D-*8";-V-1>^DNGLBYFU2:EH@QWI!R'@Z!=2-0(B=[J>?3*
MW" :!N$>@Z>-P=-.@Q<4'J>$RZ?6I._$OC$)!HVRP;_)U,%_$#EL1 X[PS=)
M'DHBB<T6_; \1_-(OTI)F]KAJVOT^[TP;+]%WWM^#[U.(5> 92G Y"HJ0!">
M[F2O?@^[[[DF?Y'+O?X>33MOM/_69*Z1T<LP!/X?)MV=#I&#6-D^*%'"2Z:J
M9M&L-KUV4G68Y^-5H[["8D681!26&NJ=G&IG1=7[JHGBA>TW"ZYT][+#3'\O
M@# ']/Z2<[6=& /-%TC\&U!+ P04    "  $@E]7,#V4&.0"  !I"0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6RM5FUOVC 0_BM65DVMM)(07MHR
MB 2DW9!:J2KJ]F':!T,.L.K8F6V@VZ_?V0D9E!1U&U_ +_<\=_><XW-W+=63
M7@ 8\IQRH7O>PIBLX_MZNH"4ZIK,0.#.3*J4&IRJN:\S!31QH)3[81"T_90R
MX45=MW:OHJY<&LX$W"NBEVE*U<\!<+GN>75OL_# Y@MC%_RHF]$YC,$\9O<*
M9W[)DK 4A&92$ 6SGM>O=ZY;UMX9?&&PUEMC8C.92/ED)Z.DYP4V(. P-9:!
MXM\*AL"Y)<(P?A2<7NG2 K?'&_8;ESOF,J$:AI)_98E9]+Q+CR0PHTMN'N3Z
M,Q3YN "GDFOW2]:%;>"1Z5(;F19@C"!E(O^GSX4.6P#DJ0:$!2!\"6B^ F@4
M@,9;/30+0/.M'EH%P*7NY[D[X6)J:-15<DV4M48V.W#J.S3JQ80])V.C<)<A
MSD2?I$S6C'-"14)&PE Q9Q,.I*\U&$W.23])F"TIY;B=GTM;X-,8#&7\#"T>
MQS$Y/3DC)X0)<H=<N*^[OL'HK ]_6D0RR",)7XFD0>ZD, M-KD4"204^/HR_
M.H#W4952FG CS2 \2#B&K$8:P0<2!F&C(I[AV^%A53K_Y_WZG[WOB-$HSTG#
M\35>X;MA@ADXO\6O>N><W#(Z81Q/"&CR[19!9&0@U=^KZI][:%9[L!=B1V=T
M"CT/;SP-:@5>]/Y=O1U\K!+_F&3Q,<FNCT2V4Z9F6:;F(?9HE&:4*;S'#9$S
M_![+.E'W/5=5Y2#AWU;EF&1Q3M9V9+;?K:*@ZZ^VI3Z2NQVI6Z74K8-2]U.I
M#/N57X<H]M[E625V3GFYE=)%K;6;U'#?IEUK[]K$^S9A6&N^4&??J'Y5NRR-
M\JS]K=Z1@IJ[IJW)5"Z%R:^'<K5\%_1=.WRQ/JAWAO6*]1C?$7G;_T.?/T+N
MJ)HSH0F'&;H*:A<8L,H;>SXQ,G.=:R(-]D$W7.!;")0UP/V9E&8SL0[*UU7T
M&U!+ P04    "  $@E]7FT:'ZM<%  !5)   &0   'AL+W=O<FMS:&5E=',O
M<VAE970U,BYX;6RU6FMOVS84_2N$5PPML%0BJ6?G&$@3K O0;4&3M!^&?5!L
MVA:JAT?2<;-?/TI615.B:"MAOR1ZW'M\CB3><TEINBOI5[8FA(-O>5:P\\F:
M\\T[QV'S-<D3]K;<D$*<698T3[C8I2N';2A)%G52GCG(=0,G3])B,IO6QV[H
M;%IN>986Y(8"MLWSA#Z])UFY.Y_ R?<#G]+5FE<'G-ETDZS(+>'WFQLJ]IP6
M99'FI&!I60!*EN>3"_CNTL-50AWQ.24[=K -*BD/9?FUVKE>G$_<BA')R)Q7
M$(GX]T@N29952(+'OPWHI/W-*O%P^SOZ;[5X(>8A8>2RS+ZD"[X^GT03L"#+
M9)OQ3^7N=]((\BN\>9FQ^B_8-;'N!,RWC)=YDRP8Y&FQ_Y]\:R[$00+T!A)0
MDX!.3<!-0GWEG#VS6M95PI/9E)8[0*MH@59MU->FSA9JTJ*ZC;><BK.IR..S
M#V6YV*59!I)B :X+GA2K]"$CX((QPADX [?BP5ELQ9%RJ3G_^HKP),W>B,#[
MVROP^M4;\ JD!;A;EULF(-G4X8)E]5O.O&'T?L\(#3"Z)9NW +N_ .0BK$F_
M-*=?D;E(AW4Z4M,=<6W:"X3:"X1J/#R U]?\]T<1 JXYR=D_.GE[/$^/5PW+
M=VR3S,GY1(P[1N@CF<Q^_@D&[J\ZL9; %.FXE8Y-Z+,/M&0,7":4/J7%"GQ.
MLBW1"=ZC!#5*538>9UX0H#"8.H^'4C1AO@>QVX8I)+V6I&>%Y![%5TG&/9*:
M,-^+ADCZ+4G?2/)B/M_FVRSA9 $N\I+R]+^DJF(ZHGZ/P1E$&'EAAZDNSH70
M]_14@Y9J8(UJ<")579R!:MA2#8U4_Q0N=_S&A[T?QQYV4=SAJ GST>'SH5",
M6HJ1!8I1;V0(BF&/HB;,Q\$0Q;BE&!LI?JF=KKK;CX0*YP;WC"RW&?B8+@EX
M+6KY$TDH>Z/C;0:&P3Y55]:>DZFH@ZXT.-<(=D>3A6A]Z%>M%1ESQQ9K6VBJ
MT@,KAY:MJ@&T)=\2FBI?&C4TFN')3M# '(ZCT'4[8^U(D$I1&BHT.^IIY: !
M\<T$S4$J06FFT.RF=V2^+LJL7#V)CFY!'D6;OR$++4DCT.A'QQ*:*EO:,_1M
MCQRCX8^6;PE-E2\M'YH]_^21TS=R,5V$4=1]-OMQ,':]  \\GM+PH=GQQS0G
ML._H9Y[KQKA+5A.'W3A& V2E]4,;W@_[KB[NJQO[79J:.#_V0CA 4]H__&'^
M?P39U  \*U6=P,D. )D[@!OQO!1<.Q4U9XZ>K/T(_T?2_Y%M_T=6_=\6FBK_
M8*)NQ_]1W]J1U[77(T$J1>G_R.S_8^H7ZAO\F8;GD2B5J.P#D+D/.*UV-2"'
M%ZG'SQ2BDI-NC<RSZ1=4K"/(T7#!>DZFJD_:,3+;\66][$<HH"2K'P^V3C?Z
M\F4$&CU^+:&ILJ6YH]!V^3)V"Z/E6T)3Y<MV 9G;A9/+5[\10+X/8;>OT<:A
M& \LNB#9,""S-X\J8G&_/(51W%O:T,4%@>_'>K)8>C\V>_]IA:P!49JK,("1
MUUW"U,1% 0[] 9K2NK'1&U]2THX@0W^XICTK554HW1F;W;E=AM$6,G/RV)%L
M"TV5>K!LCBT7,FQL&T;+MX2FRI>] [:S(H_[K4$8NMW*H(L*HH')&98]!+:W
M(H]U2^V!WRVXVC ,ATJ8; >PN1TXL80%O>L4N'[O'8PF"@_-R[&T;FR>E[^D
M?)F186PH7\])515*=\9F=_Z+KT5#EK8C6U_%C!BCA[$E-%6QM'D<VZYBQKYA
MM'Q+:.I;1=DX>.;&X>3WBOV6 +NH]UJQ'X4B.+!VX\FVP3,[])@JUD"I,T6,
M49>I+LSU!KI&3_J_9_;_TZJ8UY]V!W&W"],$A4$X0%"ZMF>>F[^@AAU!]H9+
MV',R]_J<@V\^J@]N_DCH*BT8R,A20+EO0W$'Z?X;EOT.+S?U9R /)1>SRWIS
M341/1JL <7Y9EOS[3O5E2?LET>Q_4$L#!!0    (  2"7U?FB+\,\0(  ,L)
M   9    >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;*V646_:,!2%_XJ555,K
MK4U(2" =1.KHNE7JI*JTV\.T!P,78M6Q,]M MU\_VPD9I6Z8T%X@CGV.OW.3
MV!ZLN7B4.8!"3P5E<NCE2I7GOB^G.118GO$2F.Z9<U%@I9MBX<M2 )Y944']
M, @2O\"$>=G WKL5V8 O%24,;@62RZ+ XM<'H'P]]#K>YL8=6>3*W/"S08D7
M, ;U4-X*W?(;EQDI@$G"&1(P'WH7G?-1:L;; 5\)K.76-3)))IP_FL;U;.@%
M!@@H3)5QP/IO!2.@U!AIC)^UI]=,:83;UQOW*YM=9YE@"2-.OY&9RH=>WT,S
MF.,E57=\_1GJ/+'QFW(J[2]:UV,##TV74O&B%FN"@K#J'S_5==@2=+JO",):
M$/ZK(*H%D0U:D=E8EUCA;"#X&@DS6KN9"UL;J]9I"#-/<:R$[B5:I[)/G,_6
MA%*$V0Q=,X79@DPHH LI04ETBBX*+A3YC6W1/S[IMT<"TF_/I@-<LN-+4)C0
M$ZU_&%^BXZ,3=(0(0_<Y7TH]DQSX2L,;!']:@WZH0,-70,=0GJ$H>(?"((P<
M\E&[_!*F6MZQ\O"YW-<E:^H6-G4+K5_TBM\5843!Z8U^!Y\5X(;@":%$$9#H
M^XT6H6L%A?SA"ES-T'7/8#[?<UGB*0P]_7U*$"OPLK=O.DGPWA7_/YD]*T;4
M%"-J<\_,(T'' LRJ0=@"J5P H((SE<L35_+*+K%V9IU99;TXZ [\U7:BUCD/
M3-1M$G7W)>JZP"M5O 4>IG'<WR%O]3Z0/&[(XWWDL8L\=I"'8;!#WNI]('G2
MD"?[R!,7>>(@[Z3A#GFK]X'DO8:\MX^\YR+ON<CC=(>\U?M \GY#WM]'WK=+
MO\I!'P+F"H0K2/]ED$X_2I.=)*US'9@D;9*DK4GNN<+4Q9Z^6&NB;A2$NT_!
M,2P.T][?B!65O[75FF/.%RP6A$E$8:Z%P5E/%TE41X>JH7AI=]\)5WHOMY>Y
M/FV!, -T_YQSM6F8#;TYOV5_ %!+ P04    "  $@E]7F%NOM:P"  #^!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970U-"YX;6RM55M/VS 8_2M6AB:0@-S3
MP-)(HQ5:I4U"%,;#M >3?&TM'#NSW0;^_6PGC4H;JCWL);'C<X[/\>5+UG#Q
M(E< "KU6E,FQLU*JOG9=6:R@PO*2U\#TR(*+"BO=%4M7U@)P:4D5=0//2]P*
M$^;DF?UV)_*,KQ4E#.X$DNNJPN+M!BAOQH[O;#_<D^5*F0]NGM5X"7-0C_6=
MT#VW5RE)!4P2SI" Q=CYZE]/$H.W@)\$&KG31B;),^<OIC,KQXYG# &%0AD%
MK%\;F "E1DC;^--I.OV4AKC;WJK?VNPZRS.6,.'TB91J-792!Y6PP&NJ[GGS
M#;H\L=$K.)7VB9H.ZSFH6$O%JXZL'52$M6_\VJW##L&//B $'2'X5T+8$4(;
MM'5F8TVQPGDF>(.$06LUT[!K8]DZ#6%F%^=*Z%&B>2J?<"8Y)2564*(;3#$K
M ,WM^9F"PH2B"S371Z=<4T!\@69L TQQ04"BTQ9QIB&/\RDZ/3E#)X@P]+#B
M:XE9*3-7:8MF(K?H[-RT=H(/[,RAOD2A=XX"+P@'Z)/C]"D4FNY;>O">[NJ%
MZ5<GZ%<GL'KA!WK;M&_HUW<]A&8**OE[*%:K$PWKF*MX+6M<P-C1=TV"V("3
M?_[D)]Z7H9#_2>Q=Y+"/'!Y3S^]QH\^7 D$P'=S EIY8NJD1F]P/TO0JRMS-
M;H8!6'05A6D/>^<NZMU%1]T]Z9IP0=A%+7@!<M!?*Q#O3!PGH;?G[A"4^&DX
M["WNO<5'O=T21O1%+)$V5ZX+->@N/IAXE*11NF?O$)4&29P,^TMZ?\E1?P]<
M8:KO9W^!SQ$#-60R.=B[P/?#4;#G<@ 6IL%HM&?3W:E.YL_P XLE81)16&BB
M=SG2.45;;=N.XK4M6,]<Z?)GFRO]@P)A 'I\P;G:=DP-[']Y^5]02P,$%
M  @ !()?5WQ,\&&B P  Q0L  !D   !X;"]W;W)K<VAE971S+W-H965T-34N
M>&ULK991CYLX$,>_BL5552MM%VP"A&V"U,VVNDH]7=2T=P^G/GAA"%8!4]LD
MVV]_-K!L-CA<'^XEL6'^X]^,!X]71RZ^RP) H8>JK.7:*91J;EQ7I@545%[S
M!FK])N>BHDI/Q=Z5C0":=:*J=(GGA6Y%6>TDJ^[95B0KWJJ2U; 52+951<7/
M6RCY<>U@Y_'!9[8OE'G@)JN&[F$'ZFNS%7KFCEXR5D$M&:^1@'SMO,,W&^P;
M06?Q%X.C/!DC$\H]Y]_-Y&.V=CQ#!"6DRKB@^N\ &RA+XTES_!B<.N.:1G@Z
M?O3^H0M>!W-/)6QX^3?+5+%VE@[*(*=MJ3[SX^\P!!08?RDO9?>+CH.MYZ"T
ME8I7@U@35*SN_^G#D(@3 5Y<$)!!0'Y5X ^"+G-N3]:%=4<535:"'Y$PUMJ;
M&72YZ=0Z&E:;;=PIH=\RK5/)AM>2ERRC"C)T2TM:IX!V70'=@:*L1&_05NBJ
M$>KG%=KJ]PK1.D/O?[2LT=NIT*O>[K4V_+J[0Z]>O$8O$*O1EX*W4IO*E:LT
MJ%G.30>HVQZ*7(#:07.-?.\*$8_X%OEF7GX'J9;C3DZ>RUV=GC%'9,P1Z?SY
M%_S-Q__/)VV./BJHY#=;J+WOA=VW^4IO9$-36#OZ,Y0@#N D+W_#H??6%OC_
MY.Q9&OPQ#?Z<]^23CML68*\*.Y4Y-0Y)''@K]W#*/;7!GN>/1L]X%B//8I;G
MMF5EQNJ]M<!Z:7"Z8.A'9U06HR".[53!2!7,9PGTH5+P,D.L:@0_@"D2*V(P
M79TL8A*<05K,<!!&Q(X9CICA+.98OS:RT+(D#B=D4[-X$>(+NQJ-8-$LV(=6
MU$RU JY0SA[,0'8?',]SIH\FF...)D#+:!F>45N,?"^R0R]'Z.4L](973:M
MH(**[$@%=,B2Y\I,;*C+"84?^$%\QCJU(O'R4H;C$3;^#]A:*M'V;50?U+I*
M]SK+UAJ-IYA1&)UC6JQP$%S Q-Y3:_)F0?]4!0AK]_ F"R[P^9%C,R+>!::3
M=HEGF;YP14N3LJ$C-&-'F*W,P>NS%!'L1_@<>FI'EGK/+W$_M3 \VQKTL22E
M[M#OTK2MVK+K]AGH)I$R:NK RDPF+&\PCJ.3C1V@+88QN?A1X:>&@^<[SB\D
M^PK58,_XM.40#X=X>0YO:4VQ%T;GU>N>W+',!?</*O:LEJB$7 N]ZTB'+_H[
M8S]1O.FN7?=<Z4M<-RST/1N$,=#O<\[5X\3<Y,:;>_(O4$L#!!0    (  2"
M7U<X(%:RT0(  +L'   9    >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;*V5
M76^;,!2&_XK%JJF5MO(-29<@M<FF5>JTJFFWBVD7#IP4J\9FMDG:?S\;*$L3
M-]O%;L"&\[X\YV ?3S9</,@20*''BC(Y=4JEZC/7E7D)%9:GO :FWZRXJ+#2
M4W'OREH +EI11=W \Q*WPH0YV:1]=BVR"6\4)0RN!9)-56'Q= &4;Z:.[SP_
MN"'WI3(/W&Q2XWM8@+JKKX6>N8-+02I@DG"&!*RFSKE_-DM-?!OPC<!&;HV1
MR63)^8.97!93QS- 0"%7Q@'KVQIF0*DQTAB_>D]G^*01;H^?W3^UN>M<EEC"
MC-/OI%#EU!DYJ( 5;JBZX9O/T.<3&[^<4]E>T::/]1R4-U+QJA=K@HJP[HX?
M^SIL"?SH%4'0"X)_%82](&P3[<C:M.98X6PB^ 8)$ZW=S*"M3:O6V1!F_N)"
M"?V6:)W*9IQ)3DF!%13H E/,<D"+=OW,06%"T7NTT$NG:"@@OD+G>2X:'7I%
M\))0H@A(=-Q%GNC0N\4<'1^=H"-$&+HM>2,Q*^3$51K5?-#->ZR+#BMX!6L!
M]2D*O7<H\(+0(I\=EL\AUW*_E0<OY:XNT%"E8*A2T/J%K^'\I0(_KK0 72JH
MY$];LIU[9'<W&_5,UCB'J:-WH@2Q!B=[^\9/O ^VU/^3V8M"A$,APD/NV<>J
MIOP) .6\THU$8K,7;1EW-DEK8SK).O/#-$@G[GH[E?VH,(S-'UM;&*.!,3K(
M.(<5"*'_D( UL 9L>)U#O(WGC=+Q#IXE:AR,0CM>/.#%!_$NF:X=((4?]<*I
M\1->4BMBO/?Q((J2'4);4#RV R8#8'(0\*LJ0=B(DOURQ-'8WT&R18WBQ,Z4
M#DSI0:9;KC#5/;_;>O3/UK-QIGNK*@KB*-SAW(]*?3_P=CC=K=9JCK4O6-P3
M)A&%E=9YIZE.5'1'13=1O&Z[[9(KW;O;8:E/5Q F0+]?<:Z>)Z:!#^=U]AM0
M2P,$%     @ !()?5R=7WLX9!0  @!L  !D   !X;"]W;W)K<VAE971S+W-H
M965T-3<N>&ULM5E=;]LV%/TKA-8-+9!:7_Y*YAA(8A5+L0Q!TVX/PQYHZ=HF
M(HDN2=DUL!\_DE)DR9$9&^!>+(GB/??RGBN2QYQL*7OF*P"!?F1ISJ^=E1#K
M*]?E\0HRS'MT#;E\LZ LPT(^LJ7+UPQPHHVRU T\;^AFF.3.=*+;'MET0@N1
MDAP>&>)%EF&VNX64;J\=WWEI^$*6*Z$:W.EDC9?P!.+;^I'))[=&24@&.2<T
M1PP6U\Z-?Q7Y(V6@>_Q)8,L;]T@-94[ILWJX3ZX=3T4$*<1"06!YV< =I*E"
MDG%\KT"=VJ<R;-Z_H'_2@Y>#F6,.=S3]BR1B=>V,'93  A>I^$*WOT$UH('"
MBVG*]2_:EGU'H8/B@@N:5<8R@HSDY17_J!+1, B"(P9!91 <&(R](P9A91">
MZJ%?&?1/-1A4!GKH;CEVG;@9%G@Z872+F.HMT=2-SKZVEODBN2J4)\'D6R+M
MQ/2.YAM@@LQ30$^0$\K0'U0 1Q_139(0129.T7U>EJ2B]OT,!";I!_0.D1P]
MD#25K7SB"AF-PG3CRO-=Z3DXXOD2/=!<K#B*\@22MKTK1U$/)7@9RFU@!/Q<
MI#WD7UZ@P/,OT;>G&7K_[D-77&:8)UCW4.@IF"!\@4$SO.L:X\R,-8-88OD:
M*S"$%)TPLA+FV,A:&0MK\D.-&QX-;RXDMURP0G[[ OW]N^R [@5D_)^.*&]+
MM'XWFIK2KO@:QW#MR#F+ ]N ,_WE)W_H_=K%@DVPF4VPR!)8BY)^34G?A'Y(
MR05J?* 7Z.M*>ES1-$%?&4Y(OM1UB?X]5IZW1F?G,E:"#3286H VT\";N)LF
M#S;]19; 6CP,:AX&5GB0S1SB0JUVIW)B='PN)X-7G(2'G-CT%UD":W$RK#D9
M&CGQ>N%H\#,ZNF0E!:B)MM^5="/RN4FW"3:S"199 FO1,ZKI&5E=348V*;$)
M-K,)%ED":U$RKBD9&[^8\KL@G!>'.ZR2@M)ZW)S1QZ/>H#V!W!E]G)M;FV#1
M6_&WDG99)^WR[:1=R,VM !F"0 P+Z$I>B>+[#>]>S_/D''60/Z.[<_-G$RRR
M!-9*L^_MI8=G3/0CHS% PM&"T4Q7*<YC0'2!XL84S\LI/B]9R:5VUAVXZ%Q<
M*Y>MDAB-7Y6T.;)S.;&*%ME":[/2$(2^D97[NNYAC7=Z)I<-67>VC5#GSN&G
M!D8XDI'ALC@R\A'G>8'3=*?T*&8,,.-("M7/6#:S'?('".<)DB)*W\OJ 1RO
MT$[VNT!S6)(\5[NVEH56;%ZODVR;8XYLH;7)#O9D!Z?,=6KGE!R9YLP(9W-L
MCJ?4\#+]QS9R,ZOA1+;0VNG?ZV_?J"5?TA_+JMVI&MS@M.@FP:KTKM"&K75S
M>" ;JD[MQ;7?.^@6V8JLG<&]7/;->OD3)JQ,F_JPQ0KT0M&90JM:N$+S@T9Z
M^MZ@%QYFL?\JU?U!<)C#_T/I^GNIZYNU;N./OK<VC!52LRC"UQM&L[^S5U>K
M M866CO7>PGKFS6L%DED+Y)P1@MY:6YXY,:3(OA>$+'KI,"JE*W0FH1Z/?^P
MB*UJ5%MH;0;V*M4W*JY*$XGZ'YPUL%@R@9=Z!N&"QL]HS8C<B I&EDM@G218
M%:\5FMKXU2SXKZ<2J[+4%EK)@MLX@<B +?71#Y=E+8N[/(RH6^OCI1M]J.+N
MNY=G4P^8R2T91RDLI*G7&\D/EI7'/>6#H&M]GC&G0M!,WZX )\!4!_E^027#
MU8-R4!^Z3?\#4$L#!!0    (  2"7U<-4AU7S (  !X)   9    >&PO=V]R
M:W-H965T<R]S:&5E=#4X+GAM;*U676_3,!3]*U88:)-8\]V4T49BK1"3 %7K
M!@^(!S>Y;:TE=K"==O#KN4ZR*!UI-:2^-'9\S_$YU_?6&>^$?% ; $T>\XRK
MB;71NKBR;95L(*=J( K@N+(2,J<:IW)MJT("32M0GMF>XPSMG#)NQ>/JW5S&
M8U'JC'&82Z+*/*?R]S5D8C>Q7.OIQ2U;;[1Y8<?C@JYA ?J^F$N<V2U+RG+@
MB@E.)*PFU@?W:CHR\57 -P8[U1D3XV0IQ(.9W*03RS&"((-$&P:*CRU,(<L,
M$<KXU7!:[98&V!T_L7^LO*.7)54P%=EWENK-Q!I9)(45+3-]*W:?H/$3&KY$
M9*KZ);LZ-L+@I%1:Y T8%>2,UT_ZV.2A W"# P"O 7@O!?@-P*^,ULHJ6S.J
M:3R68D>DB48V,ZAR4Z'1#>/F%!=:XBI#G(ZG@F]!:K;,@"R ,R')5Z%!D4O2
M79K!4I/S&6C*L@M<NU_,R/G9!3DCC).[C2@5Y:D:VQHE&6([:;:_KK?W#FR_
M@&) ?.<M\1S/[X%/C\-GD"#<K>#>/MS&1+39\-IL>!6??Y /;=YPI66)E:K)
MC\\80&XTY.IGG[F:+>AG,PUXI0J:P,3"#E,@MV#%;UZY0^=]G]43D>T9]UOC
M_C'V^$YHFI&D<^*J+@9NBJ'/>LTWK/C,7\4V]D;ANW XMK==4WUAP= -V[ ]
MN4$K-S@JUQGX4?B:'"S>M 13$D&?\*/,_WMF)R+;2T+8)B$\:;&&IS1^(K(]
MX\/6^/#HZ<\EXPDKL&!I+DJN^\S6#.%>W46!'STKS_ZPR.DOSZ@5&!T5>,]1
M&-;E'TCQ2L%38DJ5E"> ':9T;SM%_PBY=(.1^TQN3Q1VW8%F&K5J1R?N_='+
M>K\OK*?W[<[M9;X<OE"Y9ER1#%8(= 81^I7U;5Q/M"BJ"VTI-%Z/U7"#'S @
M30"NKP0*;R;FCFP_B>*_4$L#!!0    (  2"7U<";_&%30,  -8*   9
M>&PO=V]R:W-H965T<R]S:&5E=#4Y+GAM;*U676_3,!3]*U9 "*2Q?+7I&&VE
MK2F"!]"T\O& >'"3V]8BL8OMM(-?S[63A3;U2@5[:6WGG'/ON7:<.]P*^5VM
M #2Y*PNN1MY*Z_6E[ZML!255YV(-')\LA"RIQJE<^FHM@>:65!9^% 2)7U+&
MO?'0KMW(\5!4NF <;B1155E2^?,:"K$=>:%WOW#+EBMM%OSQ<$V7, /]:7TC
M<>:W*CDK@2LF.)&P&'E7X>5T8/ 6\)G!5NV,B7$R%^*[F;S+1UY@$H(",FT4
M*/YM8 )%880PC1^-IM>&-,3=\;WZ&^L=O<RI@HDHOK!<KT;>A4=R6-"JT+=B
M^Q8:/WVCEXE"V5^R;;"!1[)*:5$V9,R@9+S^IW=-'78(J.,F1 TAZA)Z#Q#B
MAA"?&J'7$'JG1N@W!&O=K[W;PJ54T_%0BBV1!HUJ9F"K;]E8+\;-.9EIB4\9
M\O1X(O@&I&;S L@,.!.2?! :%'E)9G@F\PK7Q8)D#8P:'$< 85R#!*4)W.&9
M54">IZ I*]0+I'Z:I>3YTQ?D*<+(QY6H%.6Y&OH:,S9Q_:S)[KK.+GH@NYB\
M%URO%)GR''('/SW.?W6$[V.EVG)%]^6ZCHX*SF!]3N+@C$1!%#ORF9Q.CUQV
M_B_Z])^C[Q4C;L].;/7B!_12F&N2,I450E42R->KN=(27_UOKIVNM7IN+7,=
M7JHUS6#DX7VG0&[ &S][$B;!:U>9'U,L?4RQZ2.)[6U(K]V0WC%U\S+;^E>T
M.'@_75M2JR56S7Q0-N,H>37T-[N5=F &P3XF/<1<!!?[F*D+\R?6GMU^:[=_
MU.Y5*?!*^D7M%P<OJ=R<1Z9417D&>&4I[;QR:M'^3B:]?M>U"]/ON#[$A/$@
M[MAV@9+ [3MI?2='?7\4FA8N9\E!C0=19Q\F+DS7V2$F"B_"CC,7*'E@1P>M
ML\%19_9&><?Q%JFP%]%G.&Y.\2W5<$:FBP78SH+<@,P0@:V,JQ!UE##822XX
M#SH.)B>ATI-0T[^AZG+X.Q_J$N32=D@*CVK%=7WOMJMM$W9E>X_.^G5X.0D=
MZRDV;76/]4>^[OC>4[ED7)$"%A@J.!_@F91U%U5/M%C;-F$N-#8==KC"QA.D
M >#SA<#/?C,Q =I6=OP;4$L#!!0    (  2"7U>L3-I5V@8  (,U   9
M>&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;+6;77.C-A2&_XK&W6F[,UD;9 -.
MFG@FX6.:F<TVLVFZ%YU>$)!M9@%Y)=G>]-=7 LQ7L!JW)[F( >L\DGB%)%Y+
MEWO*OO(U(0)]S]*<7XW60FPN)A,>K4D6\C'=D%Q^LZ0L"X4\9:L)WS 2QD50
MEDZP8=B3+$SRT>*RN';/%I=T*](D)_<,\6V6A>SYAJ1T?S4R1X<+GY/56J@+
MD\7E)ER1!R(>-_=,GDUJ2IQD).<)S1$CRZO1M7D1X+D**%+\D9 ];QTC594G
M2K^JD]OX:F2H$I&41$(A0OFQ(RY)4T62Y?A604=UGBJP?7R@!T7E966>0DY<
MFGY)8K&^&LU'*";+<)N*SW3_*ZDJ9"E>1%->_$?[*JTQ0M&6"YI5P;($69*7
MG^'WZD:T K!]) !7 ;@78,Z.!$RK@&D_8'HD8%8%S%Z;@U4%6*\-L*L N[CW
MY<TJ[K07BG!QR>@>,95:TM1!(5<1+6]PDJN6]2"8_#:1<6+Q(&CT=4W3F##^
M$_*_;1/QC#Z@ZSA.E/)ABF[SLOVJ=O"S1T28I.]EBL<'#_W\[CUZAR:(KT-&
M.$IR])@G@I_)B_+X+DE3&<0O)T(65&4WB:I"W92%PD<*=8[N:"[6'/EY3.)N
M_$16L*XE/M3R!FN!#V0S1E/C#&$#3P?*X[X^' ^$>_KPN_ 93<VCF?OZ:(]$
MXT/X4.;!J\/-N>963NL&,RUXTU<TF$-[^40%05["HY3R+2/HSX\R"-T*DO&_
MAM0O<Y@-YZ#ZT@N^"2-R-9*=)2=L1T:+'W\P;>.7(>D@81XDS(>$!4"PCN:S
M6O.9CKZX7JT86852Y"07+)'#2H1V8;HEB"X15PT"T8WJ(#@BWPF+$MY_:DO=
MRUSF12YJR-LMIN/9Y637EO-EFO/QW&C_F=T(3UOV4S6#A 5 L(YF5JV9I=7L
M2S&FDAB%.\+D' &M6)@+%"L5EV'"6@*JWON#&IYEXGW(8EZF'=;0>J'/W!H[
M/1'+1$XKD6./[9[4GK8"IPH'"0N 8!WA[%HX&T@XF;=\&B.5MGP(MVKTU8EG
MO]#%=&;CN=V33UO 4[M42)@/"0N 8!V5G5IE1ZOR[U3(N=4V9R2BJSSY6VH8
MT4R^+_!RIA51+H84+*EV2T&[KYXVXU/5@X3YD+  "-91;UZK-]>J]ZC5[0SM
M^\\P(^HM+\E7\DC.F7@B'V95J"0B:$-80@<?5WTA,'HFH9R$F0;*RNFRZ<AN
MXGEHPNUJ4:<V"DB8#PD+@&"=1G%>-XISK1Z?MMD38:ICWN8[V35+^0^SHC"/
MC_360[*7V5BM9QR;EFW/>Q,?5UN<4S6%A/F0L  (UM'4-)KW8T.KJDLS^725
MDIW5;[J<;X='V(K6%L^R'&?F&/UN6I_OJ?*!TOS!6LAZV.?S;BT"J'R[ZK3<
M"U/_9K)+1!(3]/&C.ZB&-OK4-TU0F@=*\T%I 12MJRIN5,5O[C%464!)#TGS
M0&D^*"V HG6E;]PE4VMDG-S=@EI)H#2OHK4[T1FV<6\4]T$S#:!H7?D:H\C4
M.T5^R'*Z%7(:G'/9+[-R4BRGJ?D1_2#]%A>4YE4T-<+5 AICJR\?J&,$1>O*
MUWA&IMXT4AXQND_#?% K2(O%!:5YH#0?E!9 T;J:-G:2:;_]8 KIN[B@- ^4
MYH/2 BA:5_K&8S+U)E-[,#V,I54^,5I2AF[EP!KF$1G4'-*M<4%I'BC-!Z4%
M%:WS^NXXZB>,>N3HRMF83J;>\+F52N7JA_B#KW"&E,^@7*7C'E+%;!?'=(R9
M:<[[[Z.@%A$HS0>E!5"TKHR-363J?:+'@SOT6ZGBH&J0#HH+2O- :3XH+8"B
M=5<9-&81-MY\K,603HX+2O- :3XH+8"B=:5OG"BL=Z+^4^?\+TRK=/@'=07U
MHD!I/B@M@*)U=6V\**PU/!:?&]N^>+K+)4Z%HW]/6+$T2BK?_FY0:% W"I3F
M@=)\4%H 1>N*W[A1^.T7.V%0BPJ4YH'2?%!: $7K2M\X6?A_K'DZLO*BG-<-
M-H*!I4]X/.U-P0=2S8S^"BE/7_"310/UKZ!H7=$:_PI#+7HZ?>T,?KFH:7#Q
MS%"Z<W-L67T902TK4%H 1>O*V%A66+\$:G#,'=0$U)<"I7F@-!^4%D#1NOHV
MOA1VWGY8!;6G0&D>*,T'I050M*[TC8>%]1Z6*^4MWHF86OHD.^*HY5$.ZCQ_
MV9U:Y^/^*F!7G^_)"H+:5Z"T (I6*CAI[1W)"%L5NWRXE&6;BW*#17VUWDET
M7>R?Z5V_,2_<<C]0@RFW)]V%;"4G4"@E2XDTQHX<75BYXZ<\$713[%!YHD+0
MK#A<DU#V#BJ!_'Y)9>=0G:@,ZGU7BW\ 4$L#!!0    (  2"7U>^L_TE#00
M #X5   9    >&PO=V]R:W-H965T<R]S:&5E=#8Q+GAM;,U876^C.!3]*Q8[
MFIV1VO(5\M%)(C6!U8XT(U7-S.[#:A]<N FH@!G;2=K]]6L#I4!<U,[XH2_!
M-N<>W^MSN;$]/Q)ZQV( CNZS-&<+(^:\N#1-%L:0879!"LC%FRVA&>:B2W<F
M*RC@J#3*4M.QK+&9X20WEO-R[)HNYV3/TR2':XK8/LLP?5A!2HX+PS8>!VZ2
M7<SE@+F<%W@'&^#?BVLJ>F;#$B49Y"PA.:*P71A7]F5@N]*@1/R5P)&UVDB&
M<DO(G>Q\CA:&)3V"%$(N*;!X'& -:2J9A!\_:E*CF5,:MMN/['^4P8M@;C&#
M-4G_3B(>+XRI@2+8XGW*;\CQ3Z@#\B1?2%)6_J)CC;4,%.X9)UEM+#S(DKQZ
MXOMZ(5H&@D=MX-0&3M]@](R!6QNX+YUA5!N,7CJ#5QN4H9M5[.7"^9CCY9R2
M(Z(2+=ADHUS]TEJL5Y++1-EP*MXFPHXO-YR$=S%)(Z#L=Q3\V"?\ 9VC<OA\
M)12(T)ID(BT9+H4-[F4;T <?.$[2CP+[?>.C#^\^HG<HR=&WF.P9SB,V-[EP
M3TYBAK4KJ\H5YQE77/25Y#QF*,@CB!3V_K#];,#>%,O2K(WSN#8K9Y!P \4%
M<JTSY%B.J_!G_7)S1Q7.K\T>_/3LG<5PFT1Q2S[W&;X@*U+R ( V0 ])*)XQ
MIG!^>Y(B9^@J34E8I0O9HAL(R2Y/_A.P:Z )D6C&&?KGBY@!?>:0L7]5R5*Y
M,U*[(^OG)2MP" M#%$@F? )C^?XW>VQ]4BFED\S7219H(NMH.FHT'0VQ5Q]_
M+6'8DE E1\4T+IGDO\]A.78G(B\/[656@&QOU 7YIR![9MM6%Q6<HAS;:G%U
M O::@+W!@&7FR9PL*(GV(1?_= ?(]Z"*=Y#HM>FGD\S7219H(NNH,6[4&+^M
MDC+6J:E.,E\G6:")K*/II-%THJVD5$Q>ZQ-W9_V*<HH9]TN%?XJQ/6O<JR<*
MT'0T49>3:1/L=##8&[%\F(8Q$AL>L3L]B&UW(3;17!7L(--K<T\GF:^3+-!$
MUI%CUL@Q>UOU9*934YUDODZR0!-91U/;>CJ@6-HJ2DW5_LHG5J]<K!4@S^UO
M4A0@QYIYO:*B0-DSSU-7%;MU)K.'0Q;GYB3?G:$=Y$!Q6M87'(GC7\(XQ?)H
MK8Q^D/6U^:B5S=?*%NABZ^KC/.GCO*U"4_NC2UF=;+Y6MD 76U?9IT.N/7C>
M>EVQ<4^.*)XS/:DV"I1ULH51H&S/LV;]>J. 31S/Z14<LW4?E '=E1=Q3 2T
MSWEUXF]&F\N^J_**JS>^LB_7MF+<EY>#Y?W3$WUUL_@5TUV2,Y3"5DQE74Q$
M;:3595W5X:0H;Z-N"><D*YLQX BH!(CW6T+X8T=.T%R9+O\'4$L#!!0    (
M  2"7U?N%2=0$@4  + 3   9    >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM
M;+68WW.;.!#'_Q6-KW>7SC0&"1OLG..9Q$GO^M!IINZ/AYM[4&!M<P5$)6$G
M,_WC;P482 PXZ;5^,"#8U6=7TGY!LYV07]0&0).[.$K4^6"C=7IF6<K?0,S5
M4*20X)V5D#'7>"G7EDHE\" WBB.+V;9KQ3Q,!O-9WG8CYS.1Z2A,X$82E<4Q
ME_>7$(G=^8 .]@WOP_5&FP9K/DOY&I:@/Z8W$J^LRDL0QI"H4"1$PNI\<$'/
M%FQD#/(G/H6P4XUS8D*Y%>*+N7@3G ]L0P01^-JXX'C8P@*BR'A"CJ^ETT'5
MIS%LGN^]O\Z#QV!NN8*%B#Z'@=Z<#R8#$L"*9Y%^+W9_01G0V/CS1:3R?[(K
MG[4'Q,^4%G%IC 1QF!1'?E<FHF$PZC)@I0%[9$"=#@.G-'#R0 NR/*PKKOE\
M)L6.2/,T>C,G>6YR:XPF3,PP+K7$NR':Z?E2"__+1D0!2/4[N?Z:A?J>G))E
M,:I$K,B[-,_WA<FWN7ER!9J'T4OR@EA$;;@$1<*$?$Q"K5YA(YY_V(A,\210
M,TLCH^G)\DN>RX*'=?!,R5N1Z(TBUTD P4-["V.K F3[ "]9K\,EI$/BV*\(
MLYE#/BZOR,F+!^S%H:<GITJED_?D=/14)$J1=YE6&J,/DW5;_(634;L3LVK/
M5,I].!_@LE0@MS"8__8+=>T_>A!'%>*HSWN%*&I$PC6Y A_B6Y#$H7F>&/FV
MS\ZWUOP4D11]C?.^3+G8SEU[.G7',VO;PCBN&,>]C']*GF@(GH8P/D1P;7?:
M3N!6!&XOP?4=2#]43V5P#QA.&9MXK!W"JR"\7@@L4BL(,1$6W*6AQ*//$Q_+
M70.KC<9KH;%MNQUF4L%,OF?>X-K2Y<39+[ G96QR.&IC2MV.C$TKR.F3(*$8
M/GX;P?^!G!Y .A[U)AV0U*X+KMV+^0F4F=Z8121-4<WP0@NRQ>8.W!/Z\FG(
M9<\/$NMXKN=4S/ESBR.$?]-_>FH-;4@+[2V(GW,-A>#T8@L2WPG(?F&1&QGZ
M^(]!+DTPK;'0GU G*:O9V8^JE+66M,91].,UQL2C0\^9-GX=4ZH6'MHK&HV2
M>82E<$.=!@SUG*$]Z2"H=87V"TNS9!YA&+4PC(?CKG55RP;MUXW^@GD$:MP"
M-9T./=I!54L)[=>2YU3.(XQ%1Y0U&"?.<#Q]PDRJ18?VJ\YS:N@17.\PI2X=
MCMP.Q%J*:+\6/;]^'D6='"Q13"R=V/6//JZ@_8Q'*FBM:'3ZO KZ'LRGF9E$
M"WQ-EO@1E/&(?  9DQ-\\;X'+M7+UAA[M?,[RRFK18_]8-%KB^%('^,B?#(A
M<?$)@4,?\/NV(5\<<=4_?JQ60-:O@!?KM80UUT#>X&B%^/'KDT\\REH5C_T,
MQ6.UXK%^Q?NN==4:1]&/VUA.8X<>O(0<P3DR!$8;'[;46L7ZM0H]XSK*<YAH
M1?0&2)+ED>'7[K;(@BCK(%>FL27V-,H>FV;)(^/#-'9Y,QL1:)?D'FL_#<VH
M@%I'@@?_9KG)2DB"QF',RRLCB9D$(K$A[WU"?LV?XCLN T76Y:L#(B8B.<6Z
M[V=F8X5$L(6(0)Q&XA[0U,P+I].VTV[8-HA68[\B!KG.MW$4\466Z.)#L6JM
MMHHN\@V21^V7]&Q!V]K9V:+M^0OFX VG]<YHOQMEU4C%7M9;+M>X=C&T%>+9
M0P_?%F2Q/51<:)'F.RRW0FL1YZ<;X %(\P#>7PFA]Q>F@VJ3;OX?4$L#!!0
M   (  2"7U=EX?'QD (  %L'   9    >&PO=V]R:W-H965T<R]S:&5E=#8S
M+GAM;,55;6_3,!#^*Z<@P9!HDZ9=.XTTTEX*3!I0K0(^(#ZXR:6QYL29?6G7
M?X_M9%%!;:4A$%\2O]P]?IZ[\SG:2'6O<T2"QT*4>NKE1-6Y[^LDQX+IOJRP
M-#N95 4C,U4K7U<*6>J<"N&'03#V"\9++X[<VES%D:Q)\!+G"G1=%$QM+U'(
MS=0;>$\+=WR5DUWPXZAB*UP@?:GFRLS\#B7E!9::RQ(49E/O8G!^.;'VSN K
MQXW>&8-5LI3RWDYNTJD76$(H,"&+P,QOC5<HA 4R-!Y:3*\[TCKNCI_0WSGM
M1LN2:;R2XAM/*9]Z9QZDF+%:T)W<?,!6SZG%2Z30[@N;UC;P(*DUR:)U-@P*
M7C9_]MC&8<=A,#K@$+8.H>/='.187C-B<:3D!I2U-FAVX*0Z;T..ES8I"U)F
MEQL_BA<DD_M<BA25?@6SAYK3%GJP:'($,H//E0O?A0V?W3R9,X4EY4@\8>(U
MG%PC,6X&/9@5E9!;1'"HK6?DD^%I3_.3EM-EPRD\Q FK/@R#-Q &X?!7=]_(
MZS2&G<;0X8T.X%ULF$HUO%>L)$R!)'R296_VB$EM2P)N<8VB(Z_W$3YZ@+TX
MY[IB"4X]<S,TJC5Z\<L7@W'P]@C]84=_Z-"'A\*1FX#W;.FE<"4+<QTU:U*B
MC*(5FBM"L-S"KMV<;=VRDP[?;PTDW! 6^L<^=<-_H&[4J1L=3<Y,$S>7RW V
M'29#3K5"4&9A;QX:K$'@P&S#6<=!/SB+_/4>"J<=A=-GUL>S:N,H^!]&;]Q1
M'__GVAC_ W633MWD+];&9&]M#'^K#7^G5]IGYR-3*UYJ$)@9MZ _,>E432MO
M)B0KUSZ7DDPS=L/<O'ZHK('9SZ2DIXGMR-U[&O\$4$L#!!0    (  2"7U?H
MHXEB: 0  !4/   9    >&PO=V]R:W-H965T<R]S:&5E=#8T+GAM;+57WV^C
M.!#^5T;<KUUI&S"$0'I)I#3=T]W#:JOVNOMPN@<7)@E7P*QMDE:Z/WYM0R!M
M@.R>="^ C6?FF['G&\]LS_BCV")*>,K27,RMK93%I6V+:(L9%2-68*[^K!G/
MJ%1#OK%%P9'&1BA+;==Q)G9&D]Q:S,S<#5_,6"G3),<;#J+,,LJ?KS!E^[E%
MK,/$;;+92CUA+V8%W> =ROOBAJN1W6B)DPQSD; <.*[GUI)<KDBH!<R*3PGN
MQ=$W:%<>&'O4@S_BN>5H1)AB)+4*JEX[7&&::DT*QY=:J=78U(+'WP?MOQGG
ME3,/5."*I9^36&[G5FA!C&M:IO*6[7_'VB%?ZXM8*LP3]O5:QX*H%))EM;!"
MD"5Y]:9/=2".!#RW1\"M!=Q7 L3K$?!J <\X6B$S;EU321<SSO; ]6JE37^8
MV!AIY4V2ZVV\DUS]392<7-Q)%CUN61HC%[_ ^R]E(I_A NZJ706VAEL4DB>1
MQ!C,8KC/$PE+'7Z]]LTU2IJD;V>V5'"T4CNJ35]5IMT>TU/XP'*Y%? ^CS%^
M*6\K-QI?W(,O5^Z@PCLL1N Y[\!U7 ]^!!O$EG(4]6O @M=$RS,6O!X+'PM]
M]@1\+*60-(^3?-/E=Z5DW*U$)^:E*&B$<TMEGD"^0VOQ\P]DXOPZ ''<0!P/
M:5_<YSNU86JSJ(1KC#![0 X>,4%QX=_.6%2H*[V^T:NS?[?P/>)XXYF]Z\#C
M-WC\03S+/>5J>P<M^R>62>"/ [_;\J2Q/!FT_*F*PY#AR8GA"Q)X >GQ.6@L
M!X.6%<&L,5'&;7PJ$J[>$<TC155GX 2G<'QOZCK=:,(&3?C-)T*EB*R/Q"%/
MA@"%)X#&01CV;<RT 33]EHU1^0,J/FBH13+0*/\#QNDI1D(FXTF#T2Q;#4/Z
MB_P]D'O$:=G4&22(SZ9L8'RQW"%795"QIZZEBB=@I<B.JZI5TA3^1)[!FR2'
M9Z1<='.G\S^0"#DJ"V0P( ='H';D'?012\TK+=UV>E-9"XY3?.R._*#[)!&W
MQ>E^)\Z6<,Y JA03[P7MC$?AI =36R3((,%W8&JHZ RD2B]QCR&1<-07I;8F
MD.&B<(JHI:C5$36=@3?NBMATY'L]^-H:08:+Q/!IZR2$,U#]#JAA.!J3'JAM
M42'#5:5W<[^+SLZ@GYQFB^^-@NDK3CL#]0RIZ6KV<J:M*&2PI'2SCS*GZ,Z,
M<RE ;A'RTCBN;I'U;@IS@RS5#5( %?I'1WB*M'PM7N8="DZCW:=17_1C4%V#
MUMKH8NTM[B6PSDVC\3^E$5.]$R@%B>HAJI%.I)(C<#5A$(3PDUE%-14)V'":
MUS!SEE_@$T:E;EX@Q1VF@%F1LF=4HOH(>;VRO7(CZ-IF^Z@IR)!O3*\D(&)E
M+JOK6S/;]&-+TX6\FK_2?5K7O'NYZEJ_)($2"#K_A(>6SVXA50WC!\HWB;I:
MI[A6\)Q1H#*85SU8-9"L,&W, Y.J*3*?6]6W(M<+U/\U8_(PT ::3GCQ%5!+
M P04    "  $@E]7PX:]S:$"  "'!P  &0   'AL+W=O<FMS:&5E=',O<VAE
M970V-2YX;6S%56UOVC 0_BNG3-HZ:9 0*%0=1*(MZRIU$RKJ]F':!Y,<Q*IC
MI_8%RK^?;=*(38#4:=6^)'ZY>_P\=^?S<*WT@\D1"9X*(<THR(G*\S T:8X%
M,VU5HK0["Z4+1G:JEZ$I-;+,.Q4BC*.H'Q:,RR 9^K6I3H:J(L$E3C68JBB8
MWER@4.M1T F>%^[X,B>W$";#DBUQAG1?3K6=A0U*Q@N4ABL)&A>C8-PYOQ@X
M>V_PC>/:[(S!*9DK]> F-]DHB!PA%)B20V#VM\)+%,(!61J/-6;0'.D<=\?/
MZ)^\=JMES@Q>*O&=9Y2/@K, ,ERP2M"=6G_&6L^IPTN5,/X+Z]HV"B"M#*FB
M=K8,"BZW?_94QV''H=,[X!#7#K'GO3W(L[QBQ)*A5FO0SMJBN8&7ZKTM.2Y=
M4F:D[2ZW?I3,2*4/N1(9:O,.)H\5IPVT8+;-$:@%W*$AS5/"#+PQW$M.,';1
M=+8G4Z914H[$4R;>P\D5$N-VT-KO:8#)#*:H?4')%'?WAB%938Y9F-;\+[;\
MXT/\L6Q#-_H <11W?W</;2B:>,1-/&*/USN -UXSG1FXUDPZWJ3@JY*MR1.F
ME2L?N,45"I@4I5 ;Q+V$CQ[@+MFY*5F*H\#>(H-ZA4'R]DVG'WT\0K_;T.]Z
M].ZA<.0V&RU7IAE<JL)>7<-\]8^U5;1$>YT(YAO8M9NRC5_VTN''K86$&\+"
M_-RGKOL*ZGJ-NM[1Y$P,<7L1+6=;/ OD5&D$;1?VYF&+U8D\F&M.JR1J1V?#
M<+6'PFE#X?2%]?&BVC@*_I?1ZS?4^_^Y-OJOH&[0J!O\P]H8[*V-[A^U$>[T
M5?=$?6%ZR:4!@0OK%K4'-IUZV_:W$U*E;[5S1;9Q^V%N7TK4SL#N+Y2BYXGK
MWLW;F_P"4$L#!!0    (  2"7U=;URO(W0(  * )   9    >&PO=V]R:W-H
M965T<R]S:&5E=#8V+GAM;*U676_:,!3]*U9639VTD9"$KF,0B1*V(96I G5[
MJ/9@D@NQZMB9;:!(^_&SG9!!FZ*JXP7\<<ZY7XY]>QLN[F4&H-!#3IGL.YE2
M1==U99)!CF6+%\#TSH*+'"L]%4M7%@)P:DDY=7W/NW!S3)@3]>S:C8AZ?*4H
M87 CD%SE.1;;*Z!\TW?:SFYA2I:9,@MNU"OP$F:@;HL;H6=NK9*2')@DG"$!
MB[XS:'=''8.W@!\$-G)OC$PD<\[OS62<]AW/. 04$F44L/Y;PQ H-4+:C=^5
MIE.;-,3]\4[]BXU=QS+'$H:<_B2IROK.I8-26. 555.^^095/-;!A%-I?]&F
MPGH.2E92\;PB:P]RPLI__%#E88^@=9H)?D7P'Q/"9PA!10A>:B&L".%++70J
M@@W=+6.WB8NQPE%/\ T2!JW5S,!FW[)UO@@SYV2FA-XEFJ>B(<]SHG3AE428
MI6C(F2)L"2PA(-$'-$A38BJ**1JS\EB:^I['H#"A[S3B=A:C\[-WZ P1AB:$
M4KTO>Z[2SAD3;E(Y<E4ZXC_C2( FVG0FT8BED#;PX^/\3T?XKDY*G1E_EYDK
M_ZC@#(H6"KSWR/?\H,&?X<OI?E,X_V=]]&KK!\D(ZF,26+WP&;WO7Z_1."_T
M9XT&Z&X"^1S$+_0'34$"%DEFSTX,:WWO%.8PH8$06!\C.][AFP[%4;/FDNQ*
M;17ZCKX%)8@U.-';-^T+[W-314XI%I]2;'0BL8/:A77M0JL>O.H3O[O6<#16
MD,O& H6G+- IQ>)3BHU.)'90H$Y=H,[1CVO*MYBJ+2KPUE:IJ0REPJ55,&__
M.O):ESUWO9_=)DQXB(F?8H)6^Q S>HIIMSHUI@S1W7MR<A!+^]9+E/ 54^6U
M4J_6[<3 OJ*/UJ_:W6&[83W6[4?9+?R3+WN7"19+PB2BL-"FO-9'[:\H^X%R
MHGAA'[PY5_KYM,-,MU @#$#O+SA7NXDQ4#=ET5]02P,$%     @ !()?5^E%
M$%3( P  F!$  !D   !X;"]W;W)K<VAE971S+W-H965T-C<N>&ULK5A=CZ,V
M%/TK%MU6,U(W?"20CR:1,A/0CM111S.S[<.J#PY<$C1@4]LDV7]?VQ":9!B:
MM+PDV-QSKGT.V%Q/=Y2]\0V 0/LL)7QF;(3()Z;)PPUDF/=H#D3>B2G+L)!-
MMC9YS@!'&I2EIF-9GIGAA!CSJ>Y[8O,I+42:$'ABB!=9AMGW.TCI;F;8QJ'C
M.5EOA.HPY],<K^$%Q-?\B<F66;-$20:$)Y0@!O',6-B38*SB=<#O">SXT352
M,UE1^J8:#]',L-2 ((50* 8L_[9P#VFJB.0P_JHXC3JE AY?']@#/7<YEQ7F
M<$_3/Y)(;&;&R$ 1Q+A(Q3/=?8%J/J[B"VG*]2_:E;%#QT!AP07-*K <09:0
M\A_O*QV. /;@ X!3 9QS@/L!H%\!^I=F&%2 P:49W K@7IK!JP">UKX42RN]
MQ +/IXSN$%/1DDU=:+LT6@J<$/5@O0@F[R82)^8/)*09H%>\!XX^HT44)<IQ
MG*('4CZVRO^;)0B<I+<RXNO+$MU\ND6?4$+0ZX86').(3TTA!Z,HS;!*?%\F
M=CY(W$>/E(@-1SZ)(&K ^^WX<0O>E"+42C@')>Z<5L)%L>XAV_L9.9;C-,VG
M'?X">0_U+0WO-\"7E\.;LOO_+WOPG[.?:-FOGZJ^YNM?\E1]^U7>10\",OYG
MP]#N2JI!,Y5:6"<\QR',#+ER<F!;,.8__6![UB]-)G5)MNR2S.^2+.B([,3<
M06WNH(W]8*[ >W2S @)Q(FY1SN@V4;M-D\.M?-<Z7))YFDQMF]OY9\_MNU-S
M>VS=^ZBAY3FG0?[[('?D#$Z#@O=!SFA\%'6BH5MKZ+9JZ,<QZ#U5R\BP@";=
M6CFNU:U]0#>NUW.L'V^;7H,2.3Y2P.K9@_&9F&64;9V$6:,S-1NYAA^HZ=5J
M>O_R1,9IN5$]0U24GRR+4*#?8O2ZH_4N)1M Q'?=]^T1LA6PQ@6I-=FULG=)
MMNR2S.^2+.B([,3^86W_L+O=9MBEN5V2+;LD\[LD"SHB.S%W5)L[:GVWGX"%
M\JV510ZB,<*I $:P7CGEUW"2%9E:09N,'C6M1_;9/G'?FOQ:![LD\[LD"SHB
M.W%P7#LXOL1!91_LPX27>YY<HHFLFV6!$[[)"C4O6+B1%6)3)7$W;MQ:[#,K
M6T=QK95=DOE=D@4=D956FD>58P9LK6M\CD):$%%^[M>]]3'"0E?/9_WW]F1I
M-_3[]B0H3PG^H2_/+!XQ6R>$HQ1BF<KJ#>6G 2O/ <J&H+FN6U=4R"I87VX
M1\!4@+P?4RH.#96@/HR9_PU02P,$%     @ !()?5SX*WS45!0  ;!X  !D
M  !X;"]W;W)K<VAE971S+W-H965T-C@N>&ULU9EKCZ,V%(;_BD6WU:ZT'>XA
MF68BS2:04&FJT:;3?G; 2>@ 3FTSF?[['@-A$\(PB=:JU"\)%[_O.<!C^X#'
M>\J>^980@5ZS-.=WVE:(W:VN\VA+,LQOZ([D<&9-688%[+*-SG>,X+@49:EN
M&<9 SW"2:Y-Q>>R13<:T$&F2DT>&>)%EF/WSA:1T?Z>9VN' UV2S%?* /AGO
M\(8LB7C:/3+8TQN7.,E(SA.:(T;6=]J]>1N:I:!L\4="]OQH&\E+65'Z+'?"
M^$XS9$8D)9&0%AC^7LB4I*ET@CS^KDVU)J84'F\?W(/RXN%B5IB3*4W_3&*Q
MO=.&&HK)&A>I^$KW"U)?D"O](IKR\A?MZ[:&AJ*""YK58L@@2_+J'[_6-^)(
M8#IO"*Q:8+4%[AL"NQ;8ET9P:H%SJ<"M!>ZE*0UJP>#2"%XM\"X5#&O!\%+!
MJ!:,2ARJYU<^_!D6>#)F=(^8; UN<J,DJ%3#,T]R"?M2,#B;@$Y,?,SR)-]P
M]$@86FXQ(^AG=!_'B401IRC,JPXEP?PX(P(GZ2=H\;2<H8\?/J$/*,G1[UM:
M<)S'?*P+2$D:ZU$=?EJ%M]X(;Z,'FHLM1WX>D[A#'_3K1SUZ'6Y%<S^LP_WX
M8O4:/F!V@PSG,[(,R^JZGG[YDNQND&V4<KM#/KM<WA7=OR!YVWQ3'GQ?\O/O
M2W[1+_^U2 _)FZ,.>7B!W!QUR4] L)N.89=^SAM^4YIEP#QTP.@9D=<H+0 P
MM&8T0Q%.HR*M^@1=HSA)"P'GR*$K[: K<=F5.J[B2V]4.;7=\AV.R)T&<Q<G
M[(5HDY]^, ?&+UTP5F9N:2:GM9>);9B.X8SUEV/HSIN9IF5ZH]-FOLK4@H[4
MK.%9S'E':L[(''JGS18J4PL5F9U@Y318.;U8S20L,+TCLE[#?(\D8A(5+DF*
M:/Y"6%E'0.@L*;(N@GH#7$N0<W;_/=LU7:-%T'DST[0-UVZU\U7F%G3DY@UL
MNXU01VZN87AFFR&5N86*S$X8<AN&W'Z&2$ZA%,"",@2S<\\ !#,UCO^"*@+.
M[LNZ#S8P, 9U[(&[@L,QF,4CFNT S7R#<JBQDQSVR8E3':8+R=Y\KT72/7N>
M[F#DM(GL:.79[9'/5YE8T)F8;;=P[$K,'0U;,*I,+%1D=@+CH(%QT#]/ AT;
MP AS3J,$EZ0E8EN/92)9I01>/E:2*"Y8 >])@G\N$8,!3^#7+IQZ(UZ+4V4V
M.'H>;93>;>&K3"AX-]S\O(5]-B.J3"E49'8"D-< Y/4"=!]%M,CEP+,4\!*!
M6<R?=C& !&4DO+$_D&Q%6!<EO;;74J+2;*;2S%=I%J@TFZLT6Z@T"Q69G? \
M;'@>_L]FY^%Y*>YXCF.U"JEI[W5=VP=4FODJS0*59G.59@N59J$BLY,^,&KZ
MP.@_+PIZ(UX[W*LTFZDT\T=G<[]CM.J#0&7 N4JSA4JS4)'9"<&F\>W#J-'+
ML'%C>^Z/:'J$[)+D"8SHOU$!;,<%D5^ZG"Y6^ZVOA56IVTRIFZ_4+5#J-E?J
MME#J%JIR.X7[Z*N_V0OW(X,2(MGA%.%,5M^=$/=:7 VQ2K>94C=?J5N@U&VN
MU&U1NQU/+];0<]LS3/A^NPH\_6CE*2,PY\ME2X[*-[KJ6WMSM%D:O2\7!%O'
MI^:M;W8<#\S;>;7P^<V^6H=]@!(#R@>4DC6$,FX\*'!9M;19[0BZ*]>]5E0(
MFI6;6X)CPF0#.+^F,([7.S) L\ \^1=02P,$%     @ !()?5\@8D21N!0
MRQ@  !D   !X;"]W;W)K<VAE971S+W-H965T-CDN>&ULK5E;;]LV%/XKA%<,
M"=!9HJYVEAAH(A4KL&9!LZ[/C$S;7"32$RD[^_<[E&19EF@E7?722/)W/O)<
M>"[L]5[DSW)#J4(O6<KES62CU/;*LF2RH1F14[&E''Y9B3PC"E[SM26W.27+
M4BA++<>V RLCC$\6U^6WAWQQ+0J5,DX?<B2++"/YO[<T%?N;"9X</GQAZXW2
M'ZS%]9:LZ2-57[</.;Q9#<N2991+)CC*Z>IF\@%?Q7BF!4K$7XSN9>L9:56>
MA'C6+Y^6-Q-;[XBF-%&:@L"?';VC::J98!__U*239DTMV'X^L'\LE0=EGHBD
M=R+]QI9J<S.93="2KDB1JB]B_QNM%?(U7R)26?Z+]C76GJ"DD$IDM3#L(&.\
M^DM>:D.T!(#'+.#4 DY7P#LCX-8"[EM7\&H![ZTK^+5 J;I5Z5X:+B**+*YS
ML4>Y1@.;?BBM7TJ#O1C7@?*H<OB5@9Q:Q"3GC*\E>J Y>MR0G*)?T!>:")ZP
ME)'2F6*%;HED"2)\B2*6%HHN*ZQ$'S)1<"7114058>DE2']]C-#%NTOT#EE(
M5BC&T5?.E'P/'^'YSXTH))#):TN!#GHG5E+O][;:KW-FOR[Z++C:2!3S)5T:
MY*-A^?F O 6V:PSH' QXZPP2/M+M%+GV>^38CFO8S]W;Q1V3.C^V>OR_5S\Q
MAMM$DUORN6?X[HN,YD2)W.382M0SB^J$>"6W)*$W$\AXDN8[.EG\_!,.[%]-
M5AV3+!J3+!Z)[,3^7F-_;XA]<0^5Y1-/1$;1Q>]"RDN3'RJ*H*30=62WP#,<
M@OMW;0/W49[MV?XI*NJC@M ..JC8L*(;.J[=P$Z4]1ME_<%@BU<KJ#8Z.RUU
M3H)Z@R1-BIPI1HV9Q1\S ,<DB\8DBT<B._%)T/@D& S .\CW:TCX1$J10/F
M0K%G:H.@GNQHKMA32J&,/RFH E+ED"VX+@J<EFY4Y,7DMFI%OQ4]=B=67T5$
MKR+B/L*=A>8 #1MCA,.G\9 -$31T59""/>BAXFZAXLJZXFH+L.K@DAW44:(-
MI038+<N@ D,;D#QO1+JD.=AVI4!2;2BBWWL"PC<=_3[*=/3[*-/1-ZSHA@$^
M8]E98]G9X-&/*!?0#)VK-+,Q#_J89-&89/%(9"<>F#<>F _&]K>R X=P)G"N
M8:(X='J%A&_0XD'@;B$B^;H=VNV(?](=I<EY\]Y!]/TP"#HQ:D)Y\UDG1DVH
M8-9!Q48NUS&'*+:/G;7]W?6I-)*QZ[7'C-E1V:)1V>*QV$Z]TIIW\&#@_K'5
M,XTL9YDRK:)"3R9&G^!>8'CNO!.(!E 0NITX-#$%':;8Q!2X9Z+0.>KK#%?D
M5N5]I)Q!);H7ZDP0.KT=A*[?5;@/PMC%78T-5&'0U=A Y=OXC,K'(00/]MB+
MZ'#<CO6Q "-(G:X@!96W*SRAK[K??;7Q,$"<KB%>98D'64YM<!P$\/ DT-A@
M"\[FBI&TZ27.YR#/X-G0Z^IL0,WLH*NV >5XW>[ @')P*]>?*G\<#/!@C]MN
M#UYOO<CR[Z(,C?V/EK1Z&:-I_7Z-">9>+YX,L-"UO:YQC6RNV[6NB<UO%<E3
M\QY[?!P,%[:>&:^,.@^."M]=TL9DBT9EB\=B._7'<<S PW/&[;E6JI8+V[EG
MV@V3.R.J7\(JU*Q]H*=.-^+Z5,[4.Q=PQVX?#[:RB\.=XX6N7 @[QFN-FJ.C
M;'>V,:+"7O7JH_ 4=_M& \J9MAJ$2ENK=3D+\^"ZO!67D$T*KJJ;M>9K<_/^
MH;QO[GR_Q5=WV/ ]TC?UY67PD;ZZYO\,PS@,VBBE*U@*](14D%<WY]6+$MOR
M:OA)*"6R\G%#"4R9&@"_KP08O'[1"S3_?['X#U!+ P04    "  $@E]7[D77
M9QT#  !K#   &0   'AL+W=O<FMS:&5E=',O<VAE970W,"YX;6RU5VUOTS 0
M_BM6F-"0H$G3MU':2EM31"4*U<K@ ^*#EUP;:XD=;+?=)'X\YR0-S91%'80O
MK7VYY[DW.W<9[86\4R& )O=QQ-78"K5.AK:M_!!BJEHB 8Y/UD+&5.-6;FR5
M2*!!"HHCVW6<OAU3QJW)*)4MY60DMCIB'):2J&T<4_EP!9'8CZVV=1!<LTVH
MC<">C!*Z@17HFV0I<6<7+ &+@2LF.)&P'EN7[>%L8/13A:\,]NIH34PDMT+<
MF<T\&%N.<0@B\+5AH/BW@RE$D2%"-W[FG%9AT@"/UP?V]VGL&,LM53 5T3<6
MZ'!L75@D@#7=1OI:[#] 'D_/\/DB4NDOV>>ZCD7\K=(BSL'H0<QX]D_O\SP<
M 9"G&N#F /<QH/L$H),#.J=:Z.: [JD6>CD@#=W.8D\3YU%-)R,I]D0:;60S
MBS3[*1KSQ;@Y)RLM\2E#G)Y<0T0U!&1)I7X@7R3EBJ8E5.0-N0P"9M8T(G.>
MG4E3W',/-&71*]182L9]EJ#"YST'B9*;E4?.SUZ1,\(X6; H,EPC6Z.OQJ+M
MYWY=97ZY3_C5(0O!=:C(C <05."]>OS;&KR-.2H2Y1X2=>76$JX@:9&.\YJX
MCMNI\&=Z.MRM"N??K,_^VGHI&9WBU'12OLYS3PWY_A%5R5Q#K'Y453WC[5;S
MFI?B4"74A[&%;ST%<@?6Y.6+=M]Y5Y7R)LF\)LEF#9&5BM,MBM.M8\?B<(T7
M$NZQERBH*D*&OTCQII'L)DZK/;)WQ[FMTG'+.EZ53J^L,ZO7*078*P+LU0:X
M8)S%VYC\(JL$^XW$Y9S[K:I(:XF>>]R:)/.:))LU1%:J1K^H1O\_O0OZ31:G
M23*O2;)90V2EX@R*X@QJK\HG+(./C5 *;,1\0X3ITBID"79G#6A/FZ'"W*:J
M F7<;:=T>9U'-WQ:Z\%S,W^2R5E#)K.4VD?34PQRDXZM"M.VY3IKB86TF(PO
MTX'PD?RJ/9RV*^0>3M+9X/N'/AO#%U1N&(Y:$:S1E-,:X$66V6B;;;1(TMGM
M5FB<!--EB%\#((T"/E\+H0\;8Z#XOIC\!E!+ P04    "  $@E]7@>0T9H4$
M  !<'   &0   'AL+W=O<FMS:&5E=',O<VAE970W,2YX;6RUF5UOXC@4AO^*
ME1VM9J29)@Y?;1>06I)HYJ(S%71V+U9[89(#6$UBUC8PE?;'KYVDX:-@H'5O
M(''.>6R_Y]A.[.Z*\4<Q Y#H5Y;FHN?,I)Q?NZZ(9Y 1<<'FD*LG$\8S(M4M
MG[IBSH$DA5.6NK[GM=V,T-SI=XNR>][OLH5,:0[W'(E%EA'^= LI6_4<[#P7
M#.ET)G6!V^_.R11&('_.[[FZ<VM*0C/(!64YXC#I.3?X.L(M[5!8_$EA)3:N
MD>[*F+%'??,MZ3F>;A&D$$N-(.IO"0-(4TU2[?BW@CIUG=IQ\_J9'A6=5YT9
M$P$#EOY%$SGK.9<.2F!"%JD<LM57J#I4-#!FJ2A^T:JR]1P4+X1D6>6L6I#1
MO/PGORHA-AQ\_X"#7SGXISHT*H?&CD/C4).:E4/SU!I:E4-KQP&W#SBT*X=V
MH7TI5J%T0"3I=SE;(:ZM%4U?%.$JO)7 -->9-9)</:7*3_9',%5Y(M$0YHQ+
MFD_1%W23)%2'G:3H6UXFKTZ"CP%(0M-/Z .B.7J8L84@>2*ZKE3MT#0WKNJ\
M+>OT#]390'<LES.!PCR!9(]_8/:_.N8?F?VQ;P"X2L!:1?]9Q5O?2!S!_ (U
MO,_(]_P&^CD*T,</G_8T;' ZQC=@@E>T!E61WH,+[;0J,F,"B!4&EQB#YHTZ
M<QL%KWF ]WV1C8$C-D%JFN6DR%U1]E&@_PS=O35R]51^+>8DAIZCYFH!? E.
M__??<-O[8U]$;<*"$M8J8'I-6/9QUUUNALIF=9$EV%;XFG7XFL;PW<0Q6^A0
M<8B!+LDXA<](!3)605-+&AH_5=,?\'TQ+.'8.RS5X+A)<-PD/&X2&3OZ2AE;
MM8PMHXQ#6$*^@'T2E8[MS88W,;[R=V1Z::;>2CK-7:E>FC4O&YZ_*]=+LS9N
M=CK-'<F,G7JE9.U:LK91LA%)02"#<$;W<^<'F[# )BRT"8LLP;8"VJD#VGGM
M&.B\2$=O)_V/6@1'+<*C%I&Q Z^4Y[*6Y](HSZ":1M& Y7IVY>7KW)"*1[5.
MUO/PL)Z'T=]WH-?6?]3C^P5G*97KLGTJ&^L_=\#8A 4V8:%-6&0)MI415W5&
M7+WGVFN$GQMNF["@A%UM#L0+['=VAJO-*J-C56X%"'OKSS+O_09M[5R](__(
MS>/7W)9S(VJ5%EBEA59ID2W:=HYL?+KC]QS&9OK94;=)"RK:UFNW&E<[ ]EJ
MG9$MVG8T_74T_3>,^ <F28H>.$E@[^@?LB>22JI>;&_R!/V0,P5:/Q:GKN3F
M-IZ=$S9I@55::)46V:)MY\YZ*P2;]T+>.A-8W1&Q2@NLTD*KM*BB'9REMJ.Y
MWAG!YJT1\TQP1W.:+;+-]?[H%ZVYPK,#;),66*6%5FF1+=IV(JSW=K!Y<^>M
MP[IUPB(Z.,DJ.,DJ/,DJ,O?Z7%7=C<,/)<2T.*82J%"NW$VN2^NCL)OB &BG
M_!9?#_">\@!?A^5!UQI?GKO=$3ZEN4 I3%15WD5'=8R71UGEC63SXNAES*2*
M4G$Y [6$<VV@GD\8D\\WNH+Z0+'_/U!+ P04    "  $@E]7< ^KMZX#  "K
M%   &0   'AL+W=O<FMS:&5E=',O<VAE970W,BYX;6RMF-MNXS80AE^%T )%
M"Z31R8<XM04XEG8W0+,UDAXNBEXP\M@2(HDJ2=L)D(=?DE)D2Z650WEC2]3,
M-YH9\K?)Z9[0!Y8 </289P6;60GGY:5MLSB!'+-S4D(AGJP)S3$7MW1CLY("
M7BFG/+,]QQG9.4X+*YBJL24-IF3+L[2 )45LF^>8/EU!1O8SR[5>!F[33<+E
M@!U,2[R!.^!_E$LJ[NR&LDIS*%A*"D1A/;/F[F7D^M)!6?R9PIX=72.9RCTA
M#_+F>C6S'/E&D$',)0*+KQTL(,LD2;S'OS74:F)*Q^/K%_IGE;Q(YAXS6)#L
MKW3%DYEU8:$5K/$VX[=D_Q7JA(:2%Y.,J4^TKVS'CH7B+>,DKYW%&^1I47WC
MQ[H01PZ"HW?P:@>OZS XX>#7#OY;(PQJA\%;(PQK!Y6Z7>6N"A=BCH,I)7M$
MI;6@R0M5?>4MZI46<J+<<2J>IL*/!W>P$6WGZ!9*0GE:;-#/: DT%F-BGB"R
M%D]V4&P!W3^A+T V%)=)&J.YF)7HQQ X3K.?IC87KR*!=ER'O:K">B?"^NB&
M%#QA*"I6L-+XA_W^DQY_6Y2@J8/W4H<KKQ=X!^4Y\ITSY#F>KWF?Q=O=/5TZ
M_R]Z].'HK6+XS:3P%<\_P5N00DX BM5:ODW9 _K[5V&#KCGD[!]=NRO@0 ^4
M:G?)2AS#S!)RQH#NP I^^.2.G%]TM38)"TW"(D.P5E<&35<&??2@7HCL#)6'
M!2I694RVHE=/NJY40-=11/F;L0O<J;T[KO7K)N'K)E&O22O;89/ML#?;(ZW1
M3,=G]#OA.&O$Z1E]$_*5H'D.-(VQKA:]X=X[0TW"0I.PR!"LU;-1T[.1:=T8
MF>R*25AH$A89@K6Z,FZZ,C:M&^/_+F?G?##I2(?>RNNHA]YJT!&0UUBMS"^:
MS"^,:DBTI>(?N*X@O7'>.TU-PD*3L,@0K-6L2=.LB6GQF)CLBDE8:!(6&8*U
MNN(ZAPV"8UH^:F)G-?N=-;\X83;L",@)LU%'04Z87>@EQ#W:(+E&162^G"_L
MWW@"5%N:WF#OG;-&::%16F2*UFZ;=VB;9UI.:J*IWIBDA49ID2E:NS>'[:7;
MNT_ZD*3XNM7MCKN2HC63>^JVI.C-NHKRBE65O7UT^")V'QMUZL6J7*HM=S/:
MG*S-U7E29_S*O5RXFO%0GL2IPYX#OCK&N\%TDQ8,9; 6H9SSL?CS3ZN3L>J&
MDU(=_=P3SDFN+A/ *Z#20#Q?$\)?;F2 YGPR^ Y02P,$%     @ !()?5]K2
M.N=! @   P4  !D   !X;"]W;W)K<VAE971S+W-H965T-S,N>&ULC51M:]LP
M$/XKAU9&"UOL.&DZ.L>0M!LM+"PT=/LP]D&QS[&H7EQ)=KI_/TEV309IV!=)
M=[KGT7,GG=*]TD^F0K3P(K@T<U)96U]'D<DK%-2,5(W2[91*"VJ=J7>1J372
M(H $CY(XGD6",DFR-/C6.DM58SF3N-9@&B&H_K-$KO9S,B:OC@>VJZQW1%E:
MTQUNT#[6:^VL:& IF$!IF)*@L9R3Q?AZ.?7Q(> 'P[TY6(//9*O4DS?NBSF)
MO2#DF%O/0-W4X@UR[HF<C.>>DPQ'>N#A^I7]:\C=Y;*E!F\4_\D*6\W))P(%
MEK3A]D'M[[#/Y]+SY8J;,,*^CXT)Y(VQ2O1@IT PV<WTI:_# 2!)W@ D/2 )
MNKN#@LI;:FF6:K4'[:,=FU^$5 /:B6/27\K&:K?+',YFFV9K\+E!:>%+Z\>/
ML"@*YBM&.=S+[MI]_<YOT5+&+US$$= *+4K54E@LX0R8A!7CW,%,&EDGTQ\6
MY;VD92<I>4/2]]R.($X^0!(G$WC<W,+YV<6_-)'+<D@U&5)- N_D?U/]]<U%
MP+U%87X?D]G138_3^6ZY-C7-<4Y<.QC4+9+L_;OQ+/Y\0NQD$#LYQ9XM&^,\
MQD"NQ);)[@H*:A%4Z9[R<\.,=QV3?9HX5#>4-]3WA-3I('5ZDO&&F@H67I+&
M DJM1&<9]I;"CF\6^/ROT6;C*Z>D/101';QI_SVLJ-XQ:8!CZ5#QZ.J2@.Y:
MKC.LJL,SWRKKFB8L*_=+H?8!;K]4RKX:OG.&?R_["U!+ P04    "  $@E]7
MXU*>8T,#  "L%   #0   'AL+W-T>6QE<RYX;6S=6%U/VS 4_2M1&!-($VD;
M2)O15MHJ(4W:)B1XV!MR&Z>UY-B9X[)VOWZ^=I)^X(LZ'@9=*HA]3\ZYQ_9U
M8QA6>LWIW8)2':P*+JI1N-"Z_!A%U6Q!"U)=R)(*@^12%42;KII'5:DHR2H@
M%3SJ=3I)5! FPO%0+(N;0E?!3"Z%'H7]-A2XVY=L%':3RS!P<A.9T5'X</;^
MYU+JZW>!NY]\.#GI/)Q?[\?/+' >1E[1JP-$+SJXKL$PZ>0@Z6>4,>'^KG#C
MX]1(M:9.,?+ 0]XP45KJS[F;%*7W.U[Z%M<2H[H0QL-<BDT]Q*$+&&52T."1
M\%$X(9Q-%0-63@K&UR[<@\!,<JD";0K1I.I"I/KMX*[K08W6.@434MG<+H/[
M/:T?WP.:'AADG+<&>Z$+C(<ET9HJ<6,Z]F$;? (%=?M^71J'<T76W=Y5N"'8
MFTDRE2JCJDW3#9O0>,AI#G84FR_@KF49 :BU+$PC8V0N!;$>&D;=,+(SROD=
M;. ?^8[V*M]:,[MBHFT:0W73R;@.Z&^K.>UMV<L7Z08E>Y3Z\](,1]@^[ MZ
MJVC.5K:_REL#F'H75R=ER=>?.)N+@KK!'YQP/"0-+UA(Q7Z;;% J,Q.@*@P>
MJ=)LMAWYI4AY3U>Z*:=5CGON':'G?SO/<RJH(GS;M*G]MSS++W8<]U_+LOU6
MV3?L]5B_E=^ZR:MC,)D<@\FCJ,G!,9A,C\!D_]6^-0\W&;_-B8SJD]#6<6OG
ML-5& SC4CL+O<#SFFZ3!=,FX9J+N+5B64?'DS&7D-9F:/\5V],WS&<W)DNO[
M%AR%F_8WFK%ED;9/W<)$U$]MVE]A>-VD/5&;7$QD=$6S2=U5\ZEM!J9ALM87
M$/:1&WOY$8SC,#\"&)8'<X!Q' O+\S^-9X".QV&8MX$7&:"< <IQ+!\RL1\L
MCY^3FLL_TC2-XR3!9G0R\3J88/.6)/#C5\.\ 0/+ YG^;J[QU<8KY/DZP-;T
MN0K!1HI7(C92?*X!\<\;,-+4O]I8'F!@JX#5#N3WYX&:\G/B&%85\X;M8!Q)
M4PR!6O37:)(@LY/ Q[\^V"Z)XS3U(X#Y'<0QAL!NQ!', 7C D#BV[\&]]U'4
MO*>BS?\GQW\ 4$L#!!0    (  2"7U>7BKL<P    !,"   +    7W)E;',O
M+G)E;'.=DKENPS ,0'_%T)XP!] AB#-E\18$^0%6H@_8$@6*19V_K]JE<9 +
M&7D]/!+<'FE [3BDMHNI&/T04FE:U;@!2+8ECVG.D4*NU"P>-8?20$3;8T.P
M6BP^0"X99K>]9!:G<Z17B%S7G:4]VR]/06^ KSI,<4)I2$LS#O#-TG\R]_,,
M-47E2B.56QIXT^7^=N!)T:$B6!::1<G3HAVE?QW']I#3Z:]C(K1Z6^CY<6A4
M"H[<8R6,<6*T_C6"R0_L?@!02P,$%     @ !()?5S[X%Z1^!0  ?S    \
M  !X;"]W;W)K8F]O:RYX;6S%FEMOXC@4@/^*Q<ON2CL+Y,9,52K10F<K=2@J
MJ*\K-S%@-;$9VZ%E?OW:H6SM$H[VY8@GB /)EV/'W_'E\E6JEV<I7\A;50H]
M[*R-V5QTNSI?LXKJO^2&"7MF*55%C3U4JZ[>*$8+O6;,5&4WZO6R;D6YZ%Q=
M'JXU4UW_0!J6&RZ%+70%3YR]ZH_S[I!LN>;/O.1F-^PTWTO6(147O.*_6#'L
M]#I$K^7KWU+Q7U(86LYS)<MRV.GO3SPQ97A^5#QWD OZK)L20Y\?J049=K*>
MO>"2*VV:7S37IY9QR^R/]T>UD;>\-$R-J6'?E:PW7*S<9>Q3=+W':.)P^-P'
M\4+]GS#*Y9+G;"SSNF+"[..H6.D A5[SC>X002LV[-S(+5-D1E?,/92]RUVQ
M?T!CR;QPJ0MN3ZB[HF%$Y'F8CB?3^61,[+?YP_W=>+2P!]>C^]'T9D(\R B
MC,X(^4_D0<8 9'P6R/G"?OR83#W(!(!,T"&/T19S\G!KCQYN/,@4@$S/&,F@
MNC, ,CLG9.Q!#@#( 2[DC.[(5I,94\W?1<[(F.N\E+I6?@?T%4#\BHMX)S0O
M;)>X4+2PG3(9*47%BKE_:8_P&T#X#9=P7E<553LBEV3.5X+;OU%AR"C/92T,
M]_OQ'M21]W Q;RE7Y(F6-2,_&'45_#F&?= SR*(9Y3]K>U-7[B)Y6[*W:R[U
M3O])[D3N4T*BZ2.;YI%IH^K<U,JUQ5E)A4\&V:6/K)='MF7"UNTCRZ5MA.Z\
MCP8YI8\LE>]2%J^\+ D5A:U,8]]?1T!&6K.P 4)2Z6-;Q1[+DA?V]@6YIF73
M&S89(QDS0WU,2"M];*](L77YKPO@G DN%9G:G#L((V24/K)2YD;F+VM9VCY;
M_T8F]J4V.Y\-4DD?V24WLJJX:;J]IBW:6!K['C.1\S" D$WZR#JQO9VL&%G0
MMX I@MP1(;MC0I6P@6HR!?M.T" YB"!M1,C:>'2%]H6=465V+DD0FC;CSR!V
MX-@$61ESMG*_L!WS1BK7W'PPR!@1LC'F];-F/VO'-K'N,#X7I(L(61=@/A6D
M]Q'DBPC9%R?R*?+[@EJ0H/E!OHB0?0'G5<$ 'M)&A*R-X\3J$,@_?$3('A&R
M/5HRK%9&2!X1LCS@5,NO[1CR28SL$S#7"B=L(+G$V)-?)W*M]VKW,2'#Q-B&
M:4FYVEIF#,Y^(=OF.(5H183$$V.+Y[.I6PDAY\1G<LX7TDC3QX2<$R,[!\"T
M5R]\3,@Y,;)S0,RP%X*\$R-[IQW34HZ*@@?S2S&DGAA9/7 T_0G/!%)/<IYI
ML'?,Q,>$U).<<SHL:)L)I)X$63TP9E#ID'P29/EXF!I.@A-P\0590"U)\.$M
MEX*6/B9DH0390JV8'Z,V'Q.R4()L(1 S?(4@"R7H(Y_C88473A\3LE!RAM'/
M?YAA-"$+)><<  68*62A%-E",*;?;Z:0A5)D"\&8OBQ3R$(ILH5@S-3'A"R4
M8N\  $>]0:5#%DJQ]P" F$&E@YL SKE>$U8Z9*'T3.LU[V;W,2$+I<@6 C#=
M*1\3LE"*OH)S$M,-+7U,R$(I]I: MAF9CU3.WZ$"62A#MM )S*;XR[4_G9!!
M%LJ0+70*\SU%\C$A"V7GF(8[8(;;DB +9=C+/B"F;Z$,LE"&/1D'8OH6RB +
M9>@6 I:4R1<?$]R,AFPA?U$Y&%/:=,E>T,>$+)0A6ZAEDOC$ #B#+)0A6Z@5
MTPV,;*V7/.@W(0MER!8ZO3;>1-7?@@A9:(!MH:-I]Z"!^IB0A0;8%FK!M/6?
MVS*Z8@$F9*$!MH4^K>I_>MM]3,A"@\9"W>;'^NJR8$LN6#&UM]"V/*=E/E/$
M?>RWY"6IVS.SK,ORQI8]B'M)B\/^^</>_ZM_ 5!+ P04    "  $@E]7M\<#
M,$("  !"*P  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QSS=I+;J-
M%(7AK5@L(+CNJY)6G%%/,HVR >24'XIM$-!*LONVG(%]4 ]Z$G%&J$!<_@'Z
MA(#'EW)HQGU[&G;[;EA\'@^G857MQK'[5=?#>E>.S7#7=N5T/K)I^V,SGI?]
MMNZ:]7NS+;4LEU'WMS.JI\?;F8O7KZ[\S\1VL]FOR^]V_>=83N,_!M<?;?\^
M[$H9J\5KTV_+N*KJS\-U]U!?-NGN/+E:/+^MJO[Y+57UW$$"03)_D$*0SA]D
M$&3S!SD$^?Q! 4$Q?U"&H#Q_T#T$W<\?] !!#_,'I27*N"1(FF!-H'5"KA.!
MUPG!3@1B)R0[$9B=$.U$H'9"MA.!VPGA3@1R)Z0[$=B=$.]$H+>@WD*@MZ#>
M0J"W3!ZV"?06U%L(]!;46PCT%M1;"/06U%L(]!;46PCT%M1;"/06U%L(]%;4
M6PGT5M1;"?16U%L)]-;)RQ("O17U5@*]%?56 KT5]58"O17U5@*]%?56 KT5
M]58"O0WU-@*]#?4V KT-]38"O0WU-@*];?*RFT!O0[V-0&]#O8U ;T.]C4!O
M0[V-0&]#O8U ;T>]G4!O1[V=0&]'O9U ;T>]G4!O1[V=0&^??*PDT-M1;R?0
MVU%O)]#;46\GT-M1;R?0.U#O(- [4.\@T#M0[R#0.U#O(- [4.\@T#M0[R#0
M.R8_FQ#H':AW$.@=J'<0Z!VH=Q#HG5'O3*!W1KTS@=X9]<X$>F?4._^DWL/X
M=2C#M>=[C=?_2:K'\[GE>OG+\GOGY%:YX%S?5@Q/?P%02P,$%     @ !()?
M5_C# AT& @  3RH  !,   !;0V]N=&5N=%]4>7!E<UTN>&ULS=K-;N(P% 7@
M5T'95L3X-],1L)F9;8=%7\!-+B4BB2W;;>'MQPEMI58=-!4C]6R(P/8]-[[2
MMV)Y>_049X>^&^*JV*7DOS,6ZQWU-I;.TY!7MB[T-N6OX9YY6^_M/3&Q6!A6
MNR'1D.9IK%&LES]I:Q^Z-/MUR#_'U@VK(E 7B]F/T\8Q:U58[[NVMBFOL\>A
M>9<R?TXH\\EI3]RU/E[E#07[,&%<^7O \[G?CQ1"V]!L8T.ZL7W>Q0X=B^G8
M42S/E_B@1[?=MC4UKG[H\Y$R^D"VB3NBU'?EJ>C5^>24;YA.G_SB_*G,N<"\
M<Q.<CWEB@3X?]S*2\?3<YT(44GO^%5\3<^F+WX_&:3?4_&-VOMXG%_;3/"*;
M'I??\=L9O];_9!\"I \)TH<"Z4.#]&% ^JA ^O@&TL<U2!]\@=((BJ@<A52.
M8BI'096CJ,I16.4HKG(46#F*K )%5H$BJT"15:#(*E!D%2BR"A19!8JL D56
M@2*K1)%5HL@J4625*+)*%%DEBJP215:)(JM$D56BR*I09%4HLBH4616*K I%
M5H4BJT*15:'(JE!D52BR:A19-8JL&D56C2*K1I%5H\BJ4635*+)J%%DUBJP&
M15:#(JM!D=6@R&I09#4HLAH460V*K 9%5H,B:X4B:X4B:X4B:_65LMXYM__/
M\=.S[&T[O.2SZ7^DZS]02P$"% ,4    "  $@E]7!T%-8H$   "Q    $
M            @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    (  2"
M7U=UNT]%[P   "L"   1              "  :\   !D;V-0<F]P<R]C;W)E
M+GAM;%!+ 0(4 Q0    (  2"7U>97)PC$ 8  )PG   3              "
M <T!  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ !()?5ZU8E3S*
M!0  U!X  !@              ("!#@@  'AL+W=O<FMS:&5E=',O<VAE970Q
M+GAM;%!+ 0(4 Q0    (  2"7U<QX8N$/ <  +0>   8              "
M@0X.  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    "  $@E]7
MVT)&U? "  "G"0  &               @(& %0  >&PO=V]R:W-H965T<R]S
M:&5E=#,N>&UL4$L! A0#%     @ !()?5PF;L. 2"   VBL  !@
M     ("!IA@  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    (
M  2"7U>Q'=PLU L  +IF   8              " @>X@  !X;"]W;W)K<VAE
M971S+W-H965T-2YX;6Q02P$"% ,4    "  $@E]7)CKV%Q$)  "L*0  &
M            @('X+   >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#
M%     @ !()?5X.ID?MM @  ^ 4  !@              ("!/S8  'AL+W=O
M<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    (  2"7U>(:%DBA (  , '
M   8              " @>(X  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q0
M2P$"% ,4    "  $@E]7L!,=K,0"  #P!@  &               @(&<.P
M>&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ !()?5\3%S;+=
M!@  (Q$  !D              ("!ECX  'AL+W=O<FMS:&5E=',O<VAE970Q
M,"YX;6Q02P$"% ,4    "  $@E]7R_M^?*P*  #F'@  &0
M@(&J10  >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    (  2"
M7U?)F#\I1PD  ,07   9              " @8U0  !X;"]W;W)K<VAE971S
M+W-H965T,3(N>&UL4$L! A0#%     @ !()?5P9C+FE]"   918  !D
M         ("!"UH  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4
M    "  $@E]7'XG4CZ$%  "F#0  &0              @(&_8@  >&PO=V]R
M:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    (  2"7U?V&5+J! 8  (</
M   9              " @9=H  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL
M4$L! A0#%     @ !()?5ZSI#JXQ!   4@D  !D              ("!TFX
M 'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    "  $@E]7MV $
MFJX&  #6$   &0              @($Z<P  >&PO=V]R:W-H965T<R]S:&5E
M=#$W+GAM;%!+ 0(4 Q0    (  2"7U<6I4@B>0D  'D:   9
M  " @1]Z  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @
M!()?5^QBK-9U!P  _1$  !D              ("!SX,  'AL+W=O<FMS:&5E
M=',O<VAE970Q.2YX;6Q02P$"% ,4    "  $@E]7GQ"U",@#  !;"   &0
M            @(%[BP  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4
M Q0    (  2"7U<6J"TGZ@@  #4:   9              " @7J/  !X;"]W
M;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ !()?5]BX(_10 P
MF@<  !D              ("!FY@  'AL+W=O<FMS:&5E=',O<VAE970R,BYX
M;6Q02P$"% ,4    "  $@E]7'J[@!54&  "D#P  &0              @($B
MG   >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    (  2"7U=6
M.DZ@W@,  &L(   9              " @:ZB  !X;"]W;W)K<VAE971S+W-H
M965T,C0N>&UL4$L! A0#%     @ !()?5Z"&J<_S!@  F!$  !D
M     ("!PZ8  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4
M"  $@E]7"429^K\&  #N%   &0              @('MK0  >&PO=V]R:W-H
M965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    (  2"7U>2WLRI* 0  )L)   9
M              " @>.T  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L!
M A0#%     @ !()?5Q;$T!C_ P  D D  !D              ("!0KD  'AL
M+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    "  $@E]7RZ)B[;,#
M  ";"   &0              @(%XO0  >&PO=V]R:W-H965T<R]S:&5E=#(Y
M+GAM;%!+ 0(4 Q0    (  2"7U?*L,)3/@4  +8-   9              "
M@6+!  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ !()?
M5QD[&KY:!   9 H  !D              ("!U\8  'AL+W=O<FMS:&5E=',O
M<VAE970S,2YX;6Q02P$"% ,4    "  $@E]7Y)G:8'P#   @"   &0
M        @(%HRP  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0
M   (  2"7U>OI+8"404  (4.   9              " @1O/  !X;"]W;W)K
M<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ !()?5]S;]O0,!   5 D
M !D              ("!H]0  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q0
M2P$"% ,4    "  $@E]7R*B XML"   R!@  &0              @('FV
M>&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    (  2"7U=KCZ @
MWP,  !44   9              " @?C;  !X;"]W;W)K<VAE971S+W-H965T
M,S8N>&UL4$L! A0#%     @ !()?5Z;:"ZAN @  0@4  !D
M ("!#N   'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    "  $
M@E]7<&!4&WL#  "1#P  &0              @(&SX@  >&PO=V]R:W-H965T
M<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    (  2"7U<F:94F6 ,  * .   9
M          " @67F  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#
M%     @ !()?5R1QJNL#!   /Q,  !D              ("!].D  'AL+W=O
M<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    "  $@E]7M@?!1+H'  "_
M00  &0              @($N[@  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM
M;%!+ 0(4 Q0    (  2"7U<@ ]X ;@4  '4C   9              " @1_V
M  !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ !()?5U]4
M>=74!0  EB<  !D              ("!Q/L  'AL+W=O<FMS:&5E=',O<VAE
M970T,RYX;6Q02P$"% ,4    "  $@E]7DTKB%X8#  "O#@  &0
M    @('/ 0$ >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    (
M  2"7U<7" G>R0(  '$)   9              " @8P% 0!X;"]W;W)K<VAE
M971S+W-H965T-#4N>&UL4$L! A0#%     @ !()?5W[-(.30!@  "SH  !D
M             ("!C @! 'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"
M% ,4    "  $@E]7IP=G)\8$   2'   &0              @(&3#P$ >&PO
M=V]R:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    (  2"7U? ZP4D;0,
M  X0   9              " @9 4 0!X;"]W;W)K<VAE971S+W-H965T-#@N
M>&UL4$L! A0#%     @ !()?5[5&$DL# P  - @  !D              ("!
M-!@! 'AL+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    "  $@E]7
MZG.YO?$"  "-"   &0              @(%N&P$ >&PO=V]R:W-H965T<R]S
M:&5E=#4P+GAM;%!+ 0(4 Q0    (  2"7U<P/908Y (  &D)   9
M      " @98> 0!X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%
M  @ !()?5YM&A^K7!0  520  !D              ("!L2$! 'AL+W=O<FMS
M:&5E=',O<VAE970U,BYX;6Q02P$"% ,4    "  $@E]7YHB_#/$"  #+"0
M&0              @(&_)P$ >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+
M 0(4 Q0    (  2"7U>86Z^UK (  /X&   9              " @><J 0!X
M;"]W;W)K<VAE971S+W-H965T-30N>&UL4$L! A0#%     @ !()?5WQ,\&&B
M P  Q0L  !D              ("!RBT! 'AL+W=O<FMS:&5E=',O<VAE970U
M-2YX;6Q02P$"% ,4    "  $@E]7."!6LM$"  "[!P  &0
M@(&C,0$ >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    (  2"
M7U<G5][.&04  ( ;   9              " @:LT 0!X;"]W;W)K<VAE971S
M+W-H965T-3<N>&UL4$L! A0#%     @ !()?5PU2'5?, @  '@D  !D
M         ("!^SD! 'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q02P$"% ,4
M    "  $@E]7 F_QA4T#  #6"@  &0              @('^/ $ >&PO=V]R
M:W-H965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    (  2"7U>L3-I5V@8  (,U
M   9              " @8)  0!X;"]W;W)K<VAE971S+W-H965T-C N>&UL
M4$L! A0#%     @ !()?5[ZS_24-!   /A4  !D              ("!DT<!
M 'AL+W=O<FMS:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    "  $@E]7[A4G
M4!(%  "P$P  &0              @('72P$ >&PO=V]R:W-H965T<R]S:&5E
M=#8R+GAM;%!+ 0(4 Q0    (  2"7U=EX?'QD (  %L'   9
M  " @2!1 0!X;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#%     @
M!()?5^BCB6)H!   %0\  !D              ("!YU,! 'AL+W=O<FMS:&5E
M=',O<VAE970V-"YX;6Q02P$"% ,4    "  $@E]7PX:]S:$"  "'!P  &0
M            @(&&6 $ >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;%!+ 0(4
M Q0    (  2"7U=;URO(W0(  * )   9              " @5Y; 0!X;"]W
M;W)K<VAE971S+W-H965T-C8N>&UL4$L! A0#%     @ !()?5^E%$%3( P
MF!$  !D              ("!<EX! 'AL+W=O<FMS:&5E=',O<VAE970V-RYX
M;6Q02P$"% ,4    "  $@E]7/@K?-14%  !L'@  &0              @(%Q
M8@$ >&PO=V]R:W-H965T<R]S:&5E=#8X+GAM;%!+ 0(4 Q0    (  2"7U?(
M&)$D;@4  ,L8   9              " @;UG 0!X;"]W;W)K<VAE971S+W-H
M965T-CDN>&UL4$L! A0#%     @ !()?5^Y%UV<= P  :PP  !D
M     ("!8FT! 'AL+W=O<FMS:&5E=',O<VAE970W,"YX;6Q02P$"% ,4
M"  $@E]7@>0T9H4$  !<'   &0              @(&V< $ >&PO=V]R:W-H
M965T<R]S:&5E=#<Q+GAM;%!+ 0(4 Q0    (  2"7U=P#ZNWK@,  *L4   9
M              " @7)U 0!X;"]W;W)K<VAE971S+W-H965T-S(N>&UL4$L!
M A0#%     @ !()?5]K2.N=! @   P4  !D              ("!5WD! 'AL
M+W=O<FMS:&5E=',O<VAE970W,RYX;6Q02P$"% ,4    "  $@E]7XU*>8T,#
M  "L%   #0              @ '/>P$ >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0
M   (  2"7U>7BKL<P    !,"   +              "  3U_ 0!?<F5L<R\N
M<F5L<U!+ 0(4 Q0    (  2"7U<^^!>D?@4  '\P   /              "
M 2:  0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4    "  $@E]7M\<#,$("  !"
M*P  &@              @ '1A0$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E
M;'-02P$"% ,4    "  $@E]7^,,"'08"  !/*@  $P              @ %+
LB $ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08     40!1 "X6  ""B@$    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<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>87
<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>88
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.3</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>224</ContextCount>
  <ElementCount>345</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>72</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>100000 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>100010 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets</Role>
      <ShortName>CONDENSED CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>100020 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>100030 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>100040 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>100050 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>100060 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.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>8</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.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>9</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>995455 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>995465 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>995475 - Disclosure - Acquisition of FlexBiosys, Inc</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc</Role>
      <ShortName>Acquisition of FlexBiosys, Inc</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>995485 - Disclosure - Restructuring Plan</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan</Role>
      <ShortName>Restructuring Plan</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>995495 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>995505 - Disclosure - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets</Role>
      <ShortName>Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>995515 - Disclosure - Consolidated Balance Sheet Detail</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail</Role>
      <ShortName>Consolidated Balance Sheet Detail</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>995525 - Disclosure - Convertible Senior Notes</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes</Role>
      <ShortName>Convertible Senior Notes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>995535 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>995545 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>995555 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>995565 - Disclosure - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShare</Role>
      <ShortName>Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>995575 - Disclosure - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactions</Role>
      <ShortName>Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>995585 - Disclosure - Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/SegmentReporting</Role>
      <ShortName>Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>995595 - Disclosure - Subsequent Event</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSubsequentEvent</Role>
      <ShortName>Subsequent Event</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>995605 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>995615 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>995625 - Disclosure - Acquisition of FlexBiosys, Inc (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables</Role>
      <ShortName>Acquisition of FlexBiosys, Inc (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>995635 - Disclosure - Restructuring Plan (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables</Role>
      <ShortName>Restructuring Plan (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>995645 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognition</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>995655 - Disclosure - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>995665 - Disclosure - Consolidated Balance Sheet Detail (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables</Role>
      <ShortName>Consolidated Balance Sheet Detail (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>995675 - Disclosure - Convertible Senior Notes (Tables)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables</Role>
      <ShortName>Convertible Senior Notes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>995685 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquity</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>995695 - Disclosure - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShareTables</Role>
      <ShortName>Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShare</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>995705 - Disclosure - Segment Reporting (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingTables</Role>
      <ShortName>Segment Reporting (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/20230930/taxonomy/role/SegmentReporting</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>995715 - Disclosure - Fair Value Measurements - Summary of Company's Cash, Cash Equivalents and Marketable Securities Held to Maturity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail</Role>
      <ShortName>Fair Value Measurements - Summary of Company's Cash, Cash Equivalents and Marketable Securities Held to Maturity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>995725 - Disclosure - Fair Value Measurements - Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail</Role>
      <ShortName>Fair Value Measurements - Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>995735 - Disclosure - Fair Value Measurements - Schedule of Financial assets and financial liabilities measured at fair value on a recurring basis (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails</Role>
      <ShortName>Fair Value Measurements - Schedule of Financial assets and financial liabilities measured at fair value on a recurring basis (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>995745 - Disclosure - Fair Value Measurement - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail</Role>
      <ShortName>Fair Value Measurement - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>995755 - Disclosure - Fair Value Measurements - Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail</Role>
      <ShortName>Fair Value Measurements - Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>995765 - Disclosure - Fair Value Measurements - Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail</Role>
      <ShortName>Fair Value Measurements - Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>995775 - Disclosure - Acquisition of FlexBiosys, Inc - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail</Role>
      <ShortName>Acquisition of FlexBiosys, Inc - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>995785 - Disclosure - Acquisition of FlexBiosys, Inc - Fair Value of Net Assets Acquired (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail</Role>
      <ShortName>Acquisition of FlexBiosys, Inc - Fair Value of Net Assets Acquired (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>995795 - Disclosure - Acquisitionsof FlexBiosys, Inc - Estimated Useful Life and Fair Value (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail</Role>
      <ShortName>Acquisitionsof FlexBiosys, Inc - Estimated Useful Life and Fair Value (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>995805 - Disclosure - Restructuring Plan - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail</Role>
      <ShortName>Restructuring Plan - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>995815 - Disclosure - Restructuring Plan - Summary of Restructuring Activities by Type of Cost (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail</Role>
      <ShortName>Restructuring Plan - Summary of Restructuring Activities by Type of Cost (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>995825 - Disclosure - Restructuring Plan - Summary of Activity Related to Restructuring Plan (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail</Role>
      <ShortName>Restructuring Plan - Summary of Activity Related to Restructuring Plan (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>995835 - Disclosure - Revenue Recognition - Summary of Disaggregation of Revenue (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail</Role>
      <ShortName>Revenue Recognition - Summary of Disaggregation of Revenue (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>995845 - Disclosure - Revenue Recognition - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail</Role>
      <ShortName>Revenue Recognition - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>995855 - Disclosure - Goodwill and Intangible Assets - Changes in Carrying Value of Goodwill (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail</Role>
      <ShortName>Goodwill and Intangible Assets - Changes in Carrying Value of Goodwill (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>995865 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail</Role>
      <ShortName>Goodwill and Intangible Assets - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>995875 - Disclosure - Goodwill and Intangible Assets - Schedule of Intangible Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail</Role>
      <ShortName>Goodwill and Intangible Assets - Schedule of Intangible Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>995885 - Disclosure - Goodwill and Intangible Assets - Amortization Expense for Amortized Intangible Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail</Role>
      <ShortName>Goodwill and Intangible Assets - Amortization Expense for Amortized Intangible Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>995895 - Disclosure - Consolidated Balance Sheet Detail - Schedule of Inventories (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail</Role>
      <ShortName>Consolidated Balance Sheet Detail - Schedule of Inventories (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>995905 - Disclosure - Consolidated Balance Sheet Detail - Property, Plant and Equipment (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail</Role>
      <ShortName>Consolidated Balance Sheet Detail - Property, Plant and Equipment (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>995915 - Disclosure - Consolidated Balance Sheet Detail - Schedule of Accrued Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail</Role>
      <ShortName>Consolidated Balance Sheet Detail - Schedule of Accrued Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>995925 - Disclosure - Convertible Senior Notes - Additional Information (Detail)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail</Role>
      <ShortName>Convertible Senior Notes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>995935 - Disclosure - Convertible Senior Notes - Convertible Debt (Detail)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail</Role>
      <ShortName>Convertible Senior Notes - Convertible Debt (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>995945 - Disclosure - Convertible Senior Notes - Schedule of convertiable note interest expense (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails</Role>
      <ShortName>Convertible Senior Notes - Schedule of convertiable note interest expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>995955 - Disclosure - Stockholders' Equity - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail</Role>
      <ShortName>Stockholders' Equity - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>995965 - Disclosure - Stockholders' Equity - Stock-Based Compensation Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail</Role>
      <ShortName>Stockholders' Equity - Stock-Based Compensation Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>995975 - Disclosure - Stockholders' Equity - Summary of Option Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail</Role>
      <ShortName>Stockholders' Equity - Summary of Option Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>995985 - Disclosure - Stockholders' Equity - Summary of Option Activity (Parenthetical) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail</Role>
      <ShortName>Stockholders' Equity - Summary of Option Activity (Parenthetical) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>995995 - Disclosure - Stockholders' Equity - Summary of Restricted Stock Unit Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail</Role>
      <ShortName>Stockholders' Equity - Summary of Restricted Stock Unit Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>996005 - Disclosure - Stockholders' Equity - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail</Role>
      <ShortName>Stockholders' Equity - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>996015 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>996025 - Disclosure - Income Taxes - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail</Role>
      <ShortName>Income Taxes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>996035 - Disclosure - Earnings Per Share - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail</Role>
      <ShortName>Earnings Per Share - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>996045 - Disclosure - Earnings Per Share - Reconciliation of Basic and Diluted Shares Amounts (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail</Role>
      <ShortName>Earnings Per Share - Reconciliation of Basic and Diluted Shares Amounts (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>996055 - Disclosure - Related Party Transactions - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail</Role>
      <ShortName>Related Party Transactions - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>996065 - Disclosure - Segment Reporting - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail</Role>
      <ShortName>Segment Reporting - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>996075 - Disclosure - Segment Reporting - Percentage of Revenue by Geographic Area (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail</Role>
      <ShortName>Segment Reporting - Percentage of Revenue by Geographic Area (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="rgen-20230930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>996085 - Disclosure - Subsequent Event - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail</Role>
      <ShortName>Subsequent Event - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</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="rgen-20230930.htm">rgen-20230930.htm</File>
    <File>rgen-20230930.xsd</File>
    <File>rgen-20230930_cal.xml</File>
    <File>rgen-20230930_def.xml</File>
    <File>rgen-20230930_lab.xml</File>
    <File>rgen-20230930_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="850">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
    <BaseTaxonomy items="3">http://xbrl.sec.gov/ecd/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>90
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "rgen-20230930.htm": {
   "nsprefix": "rgen",
   "nsuri": "http://www.repligencorp.com/20230930",
   "dts": {
    "inline": {
     "local": [
      "rgen-20230930.htm"
     ]
    },
    "schema": {
     "local": [
      "rgen-20230930.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd",
      "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd",
      "https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "rgen-20230930_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "rgen-20230930_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "rgen-20230930_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "rgen-20230930_pre.xml"
     ]
    }
   },
   "keyStandard": 305,
   "keyCustom": 40,
   "axisStandard": 29,
   "axisCustom": 0,
   "memberStandard": 40,
   "memberCustom": 32,
   "hidden": {
    "total": 6,
    "http://xbrl.sec.gov/dei/2023": 4,
    "http://fasb.org/us-gaap/2023": 2
   },
   "contextCount": 224,
   "entityCount": 1,
   "segmentCount": 72,
   "elementCount": 711,
   "unitCount": 6,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/ecd/2023": 3,
    "http://fasb.org/us-gaap/2023": 850,
    "http://xbrl.sec.gov/dei/2023": 29
   },
   "report": {
    "R1": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage",
     "longName": "100000 - Document - Cover Page",
     "shortName": "Cover Page",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets",
     "longName": "100010 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS",
     "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
     "longName": "100020 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome",
     "longName": "100030 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
     "longName": "100040 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd",
      "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bd1bbfe3-045c-4067-b2ca-40d489edc3fd",
      "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
     "longName": "100050 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:DepreciationAndAmortization",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
     "longName": "100060 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8",
      "name": "us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_51d8287b-dcef-48fc-883f-8e1c478a2b86",
      "name": "us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R8": {
     "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": "8",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R9": {
     "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": "9",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "ecd:MtrlTermsOfTrdArrTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "ecd:MtrlTermsOfTrdArrTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies",
     "longName": "995455 - Disclosure - Summary of Significant Accounting Policies",
     "shortName": "Summary of Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements",
     "longName": "995465 - Disclosure - Fair Value Measurements",
     "shortName": "Fair Value Measurements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc",
     "longName": "995475 - Disclosure - Acquisition of FlexBiosys, Inc",
     "shortName": "Acquisition of FlexBiosys, Inc",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan",
     "longName": "995485 - Disclosure - Restructuring Plan",
     "shortName": "Restructuring Plan",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognition",
     "longName": "995495 - Disclosure - Revenue Recognition",
     "shortName": "Revenue Recognition",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets",
     "longName": "995505 - Disclosure - Goodwill and Intangible Assets",
     "shortName": "Goodwill and Intangible Assets",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail",
     "longName": "995515 - Disclosure - Consolidated Balance Sheet Detail",
     "shortName": "Consolidated Balance Sheet Detail",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes",
     "longName": "995525 - Disclosure - Convertible Senior Notes",
     "shortName": "Convertible Senior Notes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:LongTermDebtTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:LongTermDebtTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquity",
     "longName": "995535 - Disclosure - Stockholders' Equity",
     "shortName": "Stockholders' Equity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingencies",
     "longName": "995545 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxes",
     "longName": "995555 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShare",
     "longName": "995565 - Disclosure - Earnings Per Share",
     "shortName": "Earnings Per Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactions",
     "longName": "995575 - Disclosure - Related Party Transactions",
     "shortName": "Related Party Transactions",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReporting",
     "longName": "995585 - Disclosure - Segment Reporting",
     "shortName": "Segment Reporting",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSubsequentEvent",
     "longName": "995595 - Disclosure - Subsequent Event",
     "shortName": "Subsequent Event",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "24",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "longName": "995605 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "25",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables",
     "longName": "995615 - Disclosure - Fair Value Measurements (Tables)",
     "shortName": "Fair Value Measurements (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables",
     "longName": "995625 - Disclosure - Acquisition of FlexBiosys, Inc (Tables)",
     "shortName": "Acquisition of FlexBiosys, Inc (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_d2a9999d-91a1-4233-9c7f-2fc1fb93aee8",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables",
     "longName": "995635 - Disclosure - Restructuring Plan (Tables)",
     "shortName": "Restructuring Plan (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables",
     "longName": "995645 - Disclosure - Revenue Recognition (Tables)",
     "shortName": "Revenue Recognition (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables",
     "longName": "995655 - Disclosure - Goodwill and Intangible Assets (Tables)",
     "shortName": "Goodwill and Intangible Assets (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables",
     "longName": "995665 - Disclosure - Consolidated Balance Sheet Detail (Tables)",
     "shortName": "Consolidated Balance Sheet Detail (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables",
     "longName": "995675 - Disclosure - Convertible Senior Notes (Tables)",
     "shortName": "Convertible Senior Notes (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ConvertibleDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ConvertibleDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables",
     "longName": "995685 - Disclosure - Stockholders' Equity (Tables)",
     "shortName": "Stockholders' Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShareTables",
     "longName": "995695 - Disclosure - Earnings Per Share (Tables)",
     "shortName": "Earnings Per Share (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "34",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingTables",
     "longName": "995705 - Disclosure - Segment Reporting (Tables)",
     "shortName": "Segment Reporting (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "35",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail",
     "longName": "995715 - Disclosure - Fair Value Measurements - Summary of Company's Cash, Cash Equivalents and Marketable Securities Held to Maturity (Detail)",
     "shortName": "Fair Value Measurements - Summary of Company's Cash, Cash Equivalents and Marketable Securities Held to Maturity (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "C_e4765433-97ed-401e-8926-9e289252220b",
      "name": "rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_e4765433-97ed-401e-8926-9e289252220b",
      "name": "rgen:DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "rgen:CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail",
     "longName": "995725 - Disclosure - Fair Value Measurements - Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity (Detail)",
     "shortName": "Fair Value Measurements - Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "rgen:DebtSecuritiesMaturityWithinOneYearAmortizedCost",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails",
     "longName": "995735 - Disclosure - Fair Value Measurements - Schedule of Financial assets and financial liabilities measured at fair value on a recurring basis (Details)",
     "shortName": "Fair Value Measurements - Schedule of Financial assets and financial liabilities measured at fair value on a recurring basis (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "rgen:ShortTermContingentConsideration",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "rgen:ShortTermContingentConsideration",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail",
     "longName": "995745 - Disclosure - Fair Value Measurement - Additional Information (Detail)",
     "shortName": "Fair Value Measurement - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "C_d7d37b09-d270-4cbb-a9da-f9e9f636fbc8",
      "name": "us-gaap:TreasuryStockValueAcquiredCostMethod",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_d7d37b09-d270-4cbb-a9da-f9e9f636fbc8",
      "name": "us-gaap:TreasuryStockValueAcquiredCostMethod",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail",
     "longName": "995755 - Disclosure - Fair Value Measurements - Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout (Detail)",
     "shortName": "Fair Value Measurements - Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_c0fb5bc0-33ad-43fa-9d82-863a15ba993e",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
     "longName": "995765 - Disclosure - Fair Value Measurements - Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs (Detail)",
     "shortName": "Fair Value Measurements - Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "C_6099b1e0-951d-4096-8cd0-45f1352a1677",
      "name": "us-gaap:LiabilitiesFairValueDisclosure",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_4205a452-63ed-4b15-bb8d-d8a58e8528c5",
      "name": "us-gaap:LiabilitiesFairValueDisclosure",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
     "longName": "995775 - Disclosure - Acquisition of FlexBiosys, Inc - Additional Information (Detail)",
     "shortName": "Acquisition of FlexBiosys, Inc - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:Goodwill",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3ee66a6f-df77-4080-8b9b-0df16d166621",
      "name": "us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
     "longName": "995785 - Disclosure - Acquisition of FlexBiosys, Inc - Fair Value of Net Assets Acquired (Detail)",
     "shortName": "Acquisition of FlexBiosys, Inc - Fair Value of Net Assets Acquired (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:Goodwill",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_dccc7332-54e7-463e-ad34-788072af7c2c",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
     "longName": "995795 - Disclosure - Acquisitionsof FlexBiosys, Inc - Estimated Useful Life and Fair Value (Detail)",
     "shortName": "Acquisitionsof FlexBiosys, Inc - Estimated Useful Life and Fair Value (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "C_dccc7332-54e7-463e-ad34-788072af7c2c",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_dccc7332-54e7-463e-ad34-788072af7c2c",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
     "longName": "995805 - Disclosure - Restructuring Plan - Additional Information (Detail)",
     "shortName": "Restructuring Plan - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "C_b83b7f79-eb2d-4463-8d73-431f7ee309b4",
      "name": "rgen:NoncashinventorywriteOff",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "p",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b83b7f79-eb2d-4463-8d73-431f7ee309b4",
      "name": "rgen:NoncashinventorywriteOff",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "p",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail",
     "longName": "995815 - Disclosure - Restructuring Plan - Summary of Restructuring Activities by Type of Cost (Detail)",
     "shortName": "Restructuring Plan - Summary of Restructuring Activities by Type of Cost (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:RestructuringCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "div",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_6d9b48a4-c59f-4247-89dc-85833b05f4df",
      "name": "us-gaap:RestructuringCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "div",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R47": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
     "longName": "995825 - Disclosure - Restructuring Plan - Summary of Activity Related to Restructuring Plan (Detail)",
     "shortName": "Restructuring Plan - Summary of Activity Related to Restructuring Plan (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:RestructuringCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "div",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:PaymentsForRestructuring",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R48": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail",
     "longName": "995835 - Disclosure - Revenue Recognition - Summary of Disaggregation of Revenue (Detail)",
     "shortName": "Revenue Recognition - Summary of Disaggregation of Revenue (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R49": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail",
     "longName": "995845 - Disclosure - Revenue Recognition - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)",
     "shortName": "Revenue Recognition - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:ContractWithCustomerReceivableAfterAllowanceForCreditLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail",
     "longName": "995855 - Disclosure - Goodwill and Intangible Assets - Changes in Carrying Value of Goodwill (Detail)",
     "shortName": "Goodwill and Intangible Assets - Changes in Carrying Value of Goodwill (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "us-gaap:Goodwill",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R51": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
     "longName": "995865 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)",
     "shortName": "Goodwill and Intangible Assets - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail",
     "longName": "995875 - Disclosure - Goodwill and Intangible Assets - Schedule of Intangible Assets (Detail)",
     "shortName": "Goodwill and Intangible Assets - Schedule of Intangible Assets (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock",
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock",
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail",
     "longName": "995885 - Disclosure - Goodwill and Intangible Assets - Amortization Expense for Amortized Intangible Assets (Detail)",
     "shortName": "Goodwill and Intangible Assets - Amortization Expense for Amortized Intangible Assets (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail",
     "longName": "995895 - Disclosure - Consolidated Balance Sheet Detail - Schedule of Inventories (Detail)",
     "shortName": "Consolidated Balance Sheet Detail - Schedule of Inventories (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail",
     "longName": "995905 - Disclosure - Consolidated Balance Sheet Detail - Property, Plant and Equipment (Detail)",
     "shortName": "Consolidated Balance Sheet Detail - Property, Plant and Equipment (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:Land",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:Land",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail",
     "longName": "995915 - Disclosure - Consolidated Balance Sheet Detail - Schedule of Accrued Liabilities (Detail)",
     "shortName": "Consolidated Balance Sheet Detail - Schedule of Accrued Liabilities (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
     "longName": "995925 - Disclosure - Convertible Senior Notes - Additional Information (Detail)",
     "shortName": "Convertible Senior Notes - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:DebtInstrumentConvertibleThresholdTradingDays",
      "unitRef": "U_Days",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:DebtInstrumentConvertibleThresholdTradingDays",
      "unitRef": "U_Days",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R58": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail",
     "longName": "995935 - Disclosure - Convertible Senior Notes - Convertible Debt (Detail)",
     "shortName": "Convertible Senior Notes - Convertible Debt (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "58",
     "firstAnchor": {
      "contextRef": "C_690d6b86-c5cb-44dc-b29e-2f9e31f3a681",
      "name": "us-gaap:ConvertibleNotesPayableCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_63b32e62-4479-4be9-a171-379efbd3634d",
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ConvertibleDebtTableTextBlock",
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R59": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails",
     "longName": "995945 - Disclosure - Convertible Senior Notes - Schedule of convertiable note interest expense (Details)",
     "shortName": "Convertible Senior Notes - Schedule of convertiable note interest expense (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:InterestExpenseDebtExcludingAmortization",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfConvertiableNoteInterestExpense",
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:InterestExpenseDebtExcludingAmortization",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfConvertiableNoteInterestExpense",
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
     "longName": "995955 - Disclosure - Stockholders' Equity - Additional Information (Detail)",
     "shortName": "Stockholders' Equity - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R61": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail",
     "longName": "995965 - Disclosure - Stockholders' Equity - Stock-Based Compensation Expense (Detail)",
     "shortName": "Stockholders' Equity - Stock-Based Compensation Expense (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "61",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:ShareBasedCompensation",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_1e784908-4b51-4615-ac72-38d8f501004d",
      "name": "us-gaap:ShareBasedCompensation",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R62": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail",
     "longName": "995975 - Disclosure - Stockholders' Equity - Summary of Option Activity (Detail)",
     "shortName": "Stockholders' Equity - Summary of Option Activity (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "62",
     "firstAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R63": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
     "longName": "995985 - Disclosure - Stockholders' Equity - Summary of Option Activity (Parenthetical) (Detail)",
     "shortName": "Stockholders' Equity - Summary of Option Activity (Parenthetical) (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "63",
     "firstAnchor": {
      "contextRef": "C_fdc9d1ae-9cae-4a17-92ec-6a882b3569bd",
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_fdc9d1ae-9cae-4a17-92ec-6a882b3569bd",
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R64": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail",
     "longName": "995995 - Disclosure - Stockholders' Equity - Summary of Restricted Stock Unit Activity (Detail)",
     "shortName": "Stockholders' Equity - Summary of Restricted Stock Unit Activity (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "64",
     "firstAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b09c0f9e-5c51-456f-9957-ffb5fede2034",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R65": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
     "longName": "996005 - Disclosure - Stockholders' Equity - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)",
     "shortName": "Stockholders' Equity - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "65",
     "firstAnchor": {
      "contextRef": "C_3724e612-61bd-430a-b202-7aa0f948df3b",
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3724e612-61bd-430a-b202-7aa0f948df3b",
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R66": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
     "longName": "996015 - Disclosure - Commitments and Contingencies - Additional Information (Detail)",
     "shortName": "Commitments and Contingencies - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "66",
     "firstAnchor": {
      "contextRef": "C_03f1dedf-5b09-4e09-9c8e-1f6615c13430",
      "name": "us-gaap:RoyaltyExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_03f1dedf-5b09-4e09-9c8e-1f6615c13430",
      "name": "us-gaap:RoyaltyExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R67": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail",
     "longName": "996025 - Disclosure - Income Taxes - Additional Information (Detail)",
     "shortName": "Income Taxes - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "67",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:IncomeTaxExpenseBenefit",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R68": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
     "longName": "996035 - Disclosure - Earnings Per Share - Additional Information (Detail)",
     "shortName": "Earnings Per Share - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "68",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R69": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
     "longName": "996045 - Disclosure - Earnings Per Share - Reconciliation of Basic and Diluted Shares Amounts (Detail)",
     "shortName": "Earnings Per Share - Reconciliation of Basic and Diluted Shares Amounts (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "69",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:NetIncomeLossAttributableToParentDiluted",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
       "div",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R70": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail",
     "longName": "996055 - Disclosure - Related Party Transactions - Additional Information (Detail)",
     "shortName": "Related Party Transactions - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "70",
     "firstAnchor": {
      "contextRef": "C_b74f3545-bb1d-46da-b557-40afee4df3f5",
      "name": "us-gaap:PaymentsForRent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b74f3545-bb1d-46da-b557-40afee4df3f5",
      "name": "us-gaap:PaymentsForRent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R71": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
     "longName": "996065 - Disclosure - Segment Reporting - Additional Information (Detail)",
     "shortName": "Segment Reporting - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "71",
     "firstAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "U_Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_bb38bd4d-b50c-4bec-95d8-63e414e35a67",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "U_Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    },
    "R72": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
     "longName": "996075 - Disclosure - Segment Reporting - Percentage of Revenue by Geographic Area (Detail)",
     "shortName": "Segment Reporting - Percentage of Revenue by Geographic Area (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "72",
     "firstAnchor": {
      "contextRef": "C_3de8ede4-7aec-4f10-b6c8-d34c1f3e1f36",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_d9b1dcb1-9927-4eb9-b054-87234e8e2ba3",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "unique": true
     }
    },
    "R73": {
     "role": "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail",
     "longName": "996085 - Disclosure - Subsequent Event - Additional Information (Detail)",
     "shortName": "Subsequent Event - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "73",
     "firstAnchor": {
      "contextRef": "C_145e26ad-9866-4d83-985a-d837ec5e86ae",
      "name": "us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:SubsequentEventsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_145e26ad-9866-4d83-985a-d837ec5e86ae",
      "name": "us-gaap:BusinessAcquisitionEffectiveDateOfAcquisition1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:SubsequentEventsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "rgen-20230930.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current.",
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current",
        "negatedLabel": "Operating lease liability"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]",
        "terseLabel": "Executive Category:"
       }
      }
     },
     "auth_ref": [
      "r845"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery Compensation Amount",
        "terseLabel": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r808",
      "r819",
      "r829",
      "r854"
     ]
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Finished Goods, Net of Reserves",
        "terseLabel": "Finished products",
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale."
       }
      }
     },
     "auth_ref": [
      "r146",
      "r752"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]",
        "terseLabel": "Award Timing Disclosures"
       }
      }
     },
     "auth_ref": [
      "r856"
     ]
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "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": [
      "r31",
      "r187",
      "r221",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r474",
      "r475",
      "r476",
      "r512",
      "r782",
      "r923",
      "r964",
      "r965"
     ]
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r838"
     ]
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryWorkInProcessNetOfReserves",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Work in Process, Net of Reserves",
        "terseLabel": "Work-in-process",
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing."
       }
      }
     },
     "auth_ref": [
      "r146",
      "r753"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r807",
      "r818",
      "r828",
      "r853"
     ]
    },
    "rgen_NonExecutiveMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "NonExecutiveMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non-Executive [Member]",
        "label": "Non-Executive [Member]",
        "terseLabel": "Awards Granted to Non-Executive Level Employees"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r807",
      "r818",
      "r828",
      "r853"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Interest Rate, Effective Percentage",
        "terseLabel": "Effective interest rate of the liability component",
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r105",
      "r371",
      "r528"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [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": []
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name",
        "terseLabel": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r838"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Notes, interest rate",
        "verboseLabel": "Senior convertible notes",
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r353"
     ]
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryRawMaterialsNetOfReserves",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Raw Materials, Net of Reserves",
        "terseLabel": "Raw materials",
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process."
       }
      }
     },
     "auth_ref": [
      "r146",
      "r754"
     ]
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "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": []
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r838"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateTerms": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateTerms",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Interest Rate Terms",
        "terseLabel": "Interest repayment terms",
        "documentation": "Description of the interest rate as being fixed or variable, and, if variable, identification of the index or rate on which the interest rate is based and the number of points or percentage added to that index or rate to set the rate, and other pertinent information, such as frequency of rate resets."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts receivable, net of reserves of $1,803 and $1,365 at September 30, 2023 and December 31, 2022, respectively",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "totalLabel": "Accounts Receivable, after Allowance for Credit Loss, Current, Total",
        "verboseLabel": "Accounts receivable, net of reserves",
        "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": [
      "r285",
      "r286"
     ]
    },
    "rgen_ProbabilityWeightedPresentValueMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ProbabilityWeightedPresentValueMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Probability-weighted present value.",
        "label": "Probability-Weighted Present Value [Member]",
        "terseLabel": "Probability-weighted present value"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r808",
      "r819",
      "r829",
      "r854"
     ]
    },
    "rgen_PercentOfExciseTaxOnNetStockRepurchases": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "PercentOfExciseTaxOnNetStockRepurchases",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percent of excise tax on net stock repurchases.",
        "label": "Percent Of Excise Tax On Net Stock Repurchases",
        "terseLabel": "Percent of excise tax on net stock repurchases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r807",
      "r818",
      "r828",
      "r853"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r838"
     ]
    },
    "rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Earnings Per Share Basic And Diluted [Line Items]",
        "label": "Schedule Of Earnings Per Share Basic And Diluted [Line Items]",
        "terseLabel": "Schedule Of Earnings Per Share Basic And Diluted [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r807",
      "r818",
      "r828",
      "r853"
     ]
    },
    "rgen_InventoryAdjustmentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "InventoryAdjustmentsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory adjustments",
        "label": "Inventory Adjustments [Member]",
        "documentation": "Inventory adjustments."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r838"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentMaturityDate",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Maturity Date",
        "terseLabel": "Notes, due date",
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r177",
      "r761",
      "r959"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]",
        "terseLabel": "Employee Service Share-based Compensation, Allocation of Recognized Period Costs [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": []
    },
    "rgen_PercentageOfSharesSubjectToForfeiture": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "PercentageOfSharesSubjectToForfeiture",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of shares subject to forfeiture.",
        "label": "Percentage of Shares Subject to Forfeiture",
        "terseLabel": "Estimated forfeiture rates"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r839"
     ]
    },
    "rgen_StockholdersEquityNoteDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "StockholdersEquityNoteDisclosureLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stockholders Equity Note Disclosure [Line Items]",
        "label": "Stockholders Equity Note Disclosure [Line Items]",
        "terseLabel": "Stockholders Equity Note Disclosure [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_DebtInstrumentConvertibleIntoEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtInstrumentConvertibleIntoEquity",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instrument convertible into equity.",
        "label": "Debt Instrument Convertible Into Equity",
        "terseLabel": "Debt instrument amount convertible into equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Earnings Per Share",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r240",
      "r252",
      "r253",
      "r254"
     ]
    },
    "rgen_IncomeTaxesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "IncomeTaxesTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Taxes [Table]",
        "label": "Income Taxes [Table]",
        "terseLabel": "Income Taxes [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r841"
     ]
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "verboseLabel": "Common stock shares reserved for Issuance",
        "documentation": "Aggregate number of common shares reserved for future issuance."
       }
      }
     },
     "auth_ref": [
      "r36"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r840"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "totalLabel": "Share-based Payment Arrangement, Noncash Expense, Total",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r809",
      "r820",
      "r830",
      "r855"
     ]
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r844"
     ]
    },
    "us-gaap_PatentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PatentsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Patents [Member]",
        "terseLabel": "Patents",
        "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law."
       }
      }
     },
     "auth_ref": [
      "r163"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r842"
     ]
    },
    "rgen_CustomerNumberOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "CustomerNumberOneMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer number one member.",
        "label": "Customer Number One [Member]",
        "terseLabel": "Customer Number One [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_OwnershipAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "OwnershipAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership [Axis]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r843"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name [Domain]",
        "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": [
      "r33",
      "r223",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r528",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r890"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r843"
     ]
    },
    "rgen_CashAndMoneyMarketFundsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "CashAndMoneyMarketFundsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and money market funds",
        "label": "Cash and Money Market Funds [Member]",
        "documentation": "Cash and money market funds."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_RevenueAndVolumeDiscountRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "RevenueAndVolumeDiscountRate",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue and volume discount rate.",
        "label": "Revenue and Volume Discount Rate",
        "terseLabel": "Revenue and volume discount rate"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedIncomeTaxesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Income taxes payable",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r168"
     ]
    },
    "rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "IncreasedecreaseInOperatingLeaseRightOfUseAsset",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in operating lease right of use asset.",
        "label": "Increase Decrease in Operating Lease Right Of Use Asset",
        "negatedLabel": "Operating lease right of use assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerReceivableAfterAllowanceForCreditLoss",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Receivable, after Allowance for Credit Loss",
        "terseLabel": "Accounts receivable",
        "totalLabel": "Contract with Customer, Receivable, after Allowance for Credit Loss, Total",
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right to consideration is unconditional."
       }
      }
     },
     "auth_ref": [
      "r388",
      "r390",
      "r401",
      "r734"
     ]
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Acquisition Related Costs",
        "terseLabel": "Business combination, acquisition related costs",
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities."
       }
      }
     },
     "auth_ref": [
      "r82"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r280",
      "r555",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r748",
      "r767",
      "r783",
      "r876",
      "r921",
      "r922",
      "r928",
      "r977"
     ]
    },
    "rgen_PuroliteMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "PuroliteMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purolite [Member]",
        "documentation": "Purolite member."
       }
      }
     },
     "auth_ref": []
    },
    "srt_OwnershipDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "OwnershipDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_SummaryOfSignificantAccountingPoliciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "SummaryOfSignificantAccountingPoliciesTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary Of Significant Accounting Policies [Table]",
        "label": "Summary Of Significant Accounting Policies [Table]",
        "terseLabel": "Summary Of Significant Accounting Policies [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r833"
     ]
    },
    "dei_EntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity [Domain]",
        "terseLabel": "Entity [Domain]",
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r856"
     ]
    },
    "rgen_EarnoutConsiderationEarned": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "EarnoutConsiderationEarned",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Earnout consideration earned.",
        "label": "Earnout Consideration Earned",
        "terseLabel": "Earnout consideration earned"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "terseLabel": "Weighted average common shares outstanding:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax (benefit) provision",
        "label": "Income Tax Expense (Benefit)",
        "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": [
      "r174",
      "r176",
      "r237",
      "r238",
      "r267",
      "r449",
      "r459",
      "r592"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward]",
        "terseLabel": "Options Outstanding",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r833"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "auth_ref": [
      "r280",
      "r555",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r748",
      "r767",
      "r783",
      "r876",
      "r921",
      "r922",
      "r928",
      "r977"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r856"
     ]
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss)",
        "terseLabel": "Net Income (Loss)",
        "totalLabel": "Net income",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r129",
      "r143",
      "r172",
      "r185",
      "r206",
      "r208",
      "r212",
      "r221",
      "r227",
      "r231",
      "r232",
      "r233",
      "r234",
      "r237",
      "r238",
      "r248",
      "r263",
      "r270",
      "r275",
      "r278",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r499",
      "r512",
      "r589",
      "r674",
      "r696",
      "r697",
      "r758",
      "r793",
      "r923"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "totalLabel": "Payments to Acquire Businesses, Net of Cash Acquired, Total",
        "negatedLabel": "Acquisitions, net of cash acquired",
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase."
       }
      }
     },
     "auth_ref": [
      "r43"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r835"
     ]
    },
    "rgen_NGLImpactAMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "NGLImpactAMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "NGL Impact A[Member]",
        "label": "NGL Impact A [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromConvertibleDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromConvertibleDebt",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Convertible Debt",
        "terseLabel": "Proceeds from issuance of convertible senior notes, net of costs",
        "documentation": "The cash inflow from the issuance of a long-term debt instrument which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder."
       }
      }
     },
     "auth_ref": [
      "r44"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract]",
        "terseLabel": "Weighted-Average Remaining Contractual Term (in years)"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r856"
     ]
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase of treasury stock",
        "label": "Treasury Stock, Value, Acquired, Cost Method",
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r75",
      "r158"
     ]
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current.",
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current",
        "negatedLabel": "Operating lease liability, long-term"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "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": [
      "r223",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r528",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r890"
     ]
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r833"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r834"
     ]
    },
    "rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares",
        "terseLabel": "Number of unvested options and restricted stock units"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument [Axis]",
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r114",
      "r115",
      "r167",
      "r169",
      "r223",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r528",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r890"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "terseLabel": "Options Outstanding",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_FiniteLivedIntangibleLiabilitiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "FiniteLivedIntangibleLiabilitiesLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finite-Lived Intangible Liabilities [Line Items]",
        "label": "Finite Lived Intangible Liabilities [Line Items]",
        "terseLabel": "Finite-Lived Intangible Liabilities [Line Items]",
        "verboseLabel": "Finite-Lived Intangible Liabilities [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted-Average Remaining Contractual Term (in years)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r845"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r856"
     ]
    },
    "rgen_AvitideAndFlexbiosysMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AvitideAndFlexbiosysMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Avitide and FlexBiosys.",
        "label": "Avitide and FlexBiosys [Member]",
        "terseLabel": "Avitide and FlexBiosys"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r834"
     ]
    },
    "us-gaap_ConvertibleDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConvertibleDebtTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Convertible Debt [Table Text Block]",
        "terseLabel": "Carrying Value of Convertible Senior Notes",
        "documentation": "Tabular disclosure of convertible debt instrument. Includes, but is not limited to, principal amount and amortized premium or discount."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "GoodwillAndOtherIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Goodwill And Other Intangible Assets Disclosure [Abstract]",
        "label": "Goodwill And Other Intangible Assets Disclosure [Abstract]",
        "verboseLabel": "Goodwill and Other Intangible Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TradeNamesMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade Names [Member]",
        "terseLabel": "Trademark and tradename",
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof."
       }
      }
     },
     "auth_ref": [
      "r88"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Indefinite-lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. 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 the company."
       }
      }
     },
     "auth_ref": [
      "r62",
      "r151"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-Lived Intangible Assets [Axis]",
        "terseLabel": "Indefinite-lived Intangible Assets [Axis]",
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit."
       }
      }
     },
     "auth_ref": [
      "r317",
      "r320"
     ]
    },
    "us-gaap_Land": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Land",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Land",
        "terseLabel": "Land",
        "documentation": "Amount before accumulated depletion of real estate held for productive use, excluding land held for sale."
       }
      }
     },
     "auth_ref": [
      "r878"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ConvertibleNotesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConvertibleNotesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Convertible Senior Notes, net",
        "label": "Convertible Notes Payable, Current",
        "terseLabel": "Total convertible senior notes",
        "documentation": "Carrying value as of the balance sheet date of the portion of long-term debt due within one year or the operating cycle if longer identified as Convertible Notes Payable. Convertible Notes Payable is a written promise to pay a note which can be exchanged for a specified amount of another, related security, at the option of the issuer and the holder."
       }
      }
     },
     "auth_ref": [
      "r30"
     ]
    },
    "us-gaap_RoyaltyExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RoyaltyExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Royalty Expense",
        "terseLabel": "Royalty payments",
        "documentation": "Amount of expense related to royalty payments under a contractual arrangement such as payment for mineral and drilling rights and use of technology or intellectual property."
       }
      }
     },
     "auth_ref": [
      "r133"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]",
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r60",
      "r64",
      "r556"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]",
        "terseLabel": "Other comprehensive income (loss):"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r316",
      "r318",
      "r319",
      "r321",
      "r556",
      "r560"
     ]
    },
    "us-gaap_SubsequentEventLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r523",
      "r548"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "terseLabel": "Tax withholding on vesting of restricted stock units (in shares)",
        "negatedLabel": "Tax withholding on vesting of restricted stock units (in shares)",
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "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": [
      "r60",
      "r64"
     ]
    },
    "us-gaap_SubsequentEventTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event [Table]",
        "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued."
       }
      }
     },
     "auth_ref": [
      "r523",
      "r548"
     ]
    },
    "us-gaap_ClassOfStockDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ClassOfStockDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Stock [Domain]",
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock."
       }
      }
     },
     "auth_ref": [
      "r179",
      "r195",
      "r196",
      "r197",
      "r221",
      "r243",
      "r244",
      "r249",
      "r251",
      "r257",
      "r258",
      "r292",
      "r343",
      "r345",
      "r346",
      "r347",
      "r350",
      "r351",
      "r374",
      "r375",
      "r377",
      "r380",
      "r386",
      "r512",
      "r614",
      "r615",
      "r616",
      "r617",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r654",
      "r675",
      "r698",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r871",
      "r889",
      "r896"
     ]
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventTypeAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type [Axis]",
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r523",
      "r548"
     ]
    },
    "us-gaap_RoyaltyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RoyaltyMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Royalty [Member]",
        "terseLabel": "Royalty and other revenue",
        "verboseLabel": "Royalty and Other Income",
        "documentation": "Money for usage-based right to asset."
       }
      }
     },
     "auth_ref": [
      "r929"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredFinanceCostsNet",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Issuance Costs, Net",
        "totalLabel": "Debt Issuance Costs, Net, Total",
        "negatedTerseLabel": "Unamortized debt issuance costs",
        "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r926"
     ]
    },
    "us-gaap_TrademarksMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TrademarksMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trademarks [Member]",
        "terseLabel": "Trademarks",
        "verboseLabel": "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."
       }
      }
     },
     "auth_ref": [
      "r88"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "totalLabel": "Payments to Acquire Property, Plant, and Equipment, Total",
        "negatedLabel": "Purchases of property, plant and equipment",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Numerator",
        "label": "Net Income (Loss) Available to Common Stockholders, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventsTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSubsequentEvent"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Subsequent Event",
        "label": "Subsequent Events [Text Block]",
        "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": [
      "r547",
      "r549"
     ]
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventTypeDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type [Domain]",
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r523",
      "r548"
     ]
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Range [Axis]"
       }
      }
     },
     "auth_ref": [
      "r339",
      "r340",
      "r341",
      "r342",
      "r403",
      "r411",
      "r437",
      "r438",
      "r439",
      "r553",
      "r554",
      "r599",
      "r644",
      "r645",
      "r707",
      "r709",
      "r711",
      "r712",
      "r721",
      "r746",
      "r747",
      "r759",
      "r766",
      "r779",
      "r784",
      "r787",
      "r918",
      "r925",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ]
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "terseLabel": "Intangible assets, net",
        "totalLabel": "Intangible Assets, Net (Excluding Goodwill), Total",
        "verboseLabel": "Net Carrying Value",
        "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": [
      "r58",
      "r63"
     ]
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation and Significant Accounting Policies [Text Block]",
        "terseLabel": "Basis of presentation",
        "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r144"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "totalLabel": "Fair value of net assets acquired",
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax (benefit) provision",
        "verboseLabel": "Effective tax rate",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "totalLabel": "Effective Income Tax Rate Reconciliation, Percent, Total",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r450"
     ]
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "auth_ref": [
      "r339",
      "r340",
      "r341",
      "r342",
      "r411",
      "r554",
      "r599",
      "r644",
      "r645",
      "r707",
      "r709",
      "r711",
      "r712",
      "r721",
      "r746",
      "r747",
      "r759",
      "r766",
      "r779",
      "r784",
      "r925",
      "r966",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonoperating Income (Expense)",
        "totalLabel": "Other income (expenses), net",
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)."
       }
      }
     },
     "auth_ref": [
      "r136"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Range [Domain]"
       }
      }
     },
     "auth_ref": [
      "r339",
      "r340",
      "r341",
      "r342",
      "r403",
      "r411",
      "r437",
      "r438",
      "r439",
      "r553",
      "r554",
      "r599",
      "r644",
      "r645",
      "r707",
      "r709",
      "r711",
      "r712",
      "r721",
      "r746",
      "r747",
      "r759",
      "r766",
      "r779",
      "r784",
      "r787",
      "r918",
      "r925",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognition"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Text Block]",
        "verboseLabel": "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": [
      "r178",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r402"
     ]
    },
    "us-gaap_SubsidiarySaleOfStockAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsidiarySaleOfStockAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sale of Stock [Axis]",
        "documentation": "Information by type of sale of the entity's stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetAndLiabilityAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Abstract]",
        "verboseLabel": "Balances from contracts with customers only:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted (Note 12)",
        "totalLabel": "Denominator for diluted earnings per share - adjusted weighted average shares used in computing net income per share - diluted",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "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": [
      "r242",
      "r251"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "auth_ref": [
      "r339",
      "r340",
      "r341",
      "r342",
      "r411",
      "r554",
      "r599",
      "r644",
      "r645",
      "r707",
      "r709",
      "r711",
      "r712",
      "r721",
      "r746",
      "r747",
      "r759",
      "r766",
      "r779",
      "r784",
      "r925",
      "r966",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971"
     ]
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment",
        "totalLabel": "Dilutive potential common shares",
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation."
       }
      }
     },
     "auth_ref": [
      "r897"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net",
        "periodEndLabel": "Finite-Lived Intangible Assets, Net, Ending Balance",
        "periodStartLabel": "Finite-Lived Intangible Assets, Net, Beginning Balance",
        "terseLabel": "Net Carrying Value",
        "totalLabel": "Total",
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r556"
     ]
    },
    "us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Convertible, Threshold Percentage of Stock Price Trigger",
        "terseLabel": "Notes threshold percentage of stock price trigger",
        "documentation": "Minimum percentage of common stock price to conversion price of convertible debt instruments to determine eligibility of conversion."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average, Forfeited/Cancelled",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event."
       }
      }
     },
     "auth_ref": [
      "r431"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesRestrictedStock": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesRestrictedStock",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "parentTag": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares, Restricted Stock",
        "terseLabel": "Options and stock units",
        "documentation": "Number of shares of restricted stock determined by relating the portion of time within a reporting period that restricted shares have been outstanding to the total time in that period. Restricted shares are subject to sales, contractual, regulatory or other restrictions that prevent or inhibit the holder from freely disposing of them before the restriction ends."
       }
      }
     },
     "auth_ref": [
      "r50"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Gross Carrying Value",
        "totalLabel": "Finite-Lived Intangible Assets, Gross, Total",
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r560"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic",
        "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": [
      "r241",
      "r251"
     ]
    },
    "us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Transaction Costs",
        "terseLabel": "Transaction costs",
        "documentation": "Amount of direct costs of the business combination including legal, accounting, and other costs incurred to consummate the business acquisition."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Total revenue",
        "label": "Revenue from Contract with Customer, Including Assessed Tax",
        "terseLabel": "Revenue",
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise."
       }
      }
     },
     "auth_ref": [
      "r264",
      "r265",
      "r269",
      "r273",
      "r274",
      "r280",
      "r282",
      "r284",
      "r399",
      "r400",
      "r555"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total cash used in financing activities",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r217"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "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/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Total cash provided by (used in) investing activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r217"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash flows from investing activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]",
        "terseLabel": "Schedule of Identified Intangible Assets and Estimated Useful Lives",
        "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": [
      "r60"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Total cash provided by 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": [
      "r141",
      "r142",
      "r143"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash flows from operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Domain]",
        "documentation": "Type of cash and cash equivalent. Cash is 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."
       }
      }
     },
     "auth_ref": [
      "r188"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities",
        "totalLabel": "Total liabilities",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r221",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r474",
      "r475",
      "r476",
      "r512",
      "r652",
      "r757",
      "r794",
      "r923",
      "r964",
      "r965"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Net",
        "terseLabel": "Inventories, net",
        "totalLabel": "Total inventories, net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r751",
      "r782"
     ]
    },
    "us-gaap_DeferredRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredRevenue",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Deferred revenue (included in accrued liabilities and other noncurrent liabilities in the condensed consolidated balance sheets)",
        "label": "Deferred Revenue",
        "totalLabel": "Deferred Revenue, Total",
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r880"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other noncurrent assets",
        "totalLabel": "Other Assets, Noncurrent, Total",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r193"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]",
        "documentation": "Information by business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r84",
      "r465",
      "r777",
      "r778"
     ]
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]",
        "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": [
      "r465",
      "r777",
      "r778"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders' equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r123",
      "r170",
      "r585",
      "r782",
      "r891",
      "r905",
      "r960"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentIncomeNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentIncomeNet",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Income, Net",
        "terseLabel": "Investment income",
        "totalLabel": "Investment Income, Net, Total",
        "documentation": "Amount after accretion (amortization) of discount (premium), and investment expense, of interest income and dividend income on nonoperating securities."
       }
      }
     },
     "auth_ref": [
      "r135",
      "r137"
     ]
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r84",
      "r465"
     ]
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition [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": [
      "r465"
     ]
    },
    "us-gaap_DerivativeFixedInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DerivativeFixedInterestRate",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative, Fixed Interest Rate",
        "terseLabel": "Discount Rate",
        "documentation": "Fixed interest rate related to the interest rate derivative."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxAuthorityDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority [Domain]",
        "terseLabel": "Income Tax Authority [Domain]",
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentTypeCategorizationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentTypeCategorizationMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments [Domain]",
        "documentation": "Asset obtained to generate income or appreciate in value."
       }
      }
     },
     "auth_ref": [
      "r635",
      "r637",
      "r638",
      "r640",
      "r643",
      "r706",
      "r708",
      "r710",
      "r713",
      "r714",
      "r719",
      "r720",
      "r722",
      "r723",
      "r724",
      "r725",
      "r726",
      "r787"
     ]
    },
    "us-gaap_TrademarksAndTradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TrademarksAndTradeNamesMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trademarks and Trade Names [Member]",
        "terseLabel": "Trademark and tradename",
        "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": [
      "r88"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueAcquisitions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueAcquisitions",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Value, Acquisitions",
        "verboseLabel": "True up of costs related to the December 2020 issuance of common stock",
        "terseLabel": "Issuance of commons stock pursuant to the acquisition",
        "documentation": "Value of stock issued pursuant to acquisitions during the period."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r37",
      "r158"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "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": [
      "r442",
      "r443",
      "r444",
      "r623",
      "r893",
      "r894",
      "r895",
      "r957",
      "r983"
     ]
    },
    "rgen_CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "CashCashEquivalentsAndMarketableSecuritiesHeldToMaturityTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Cash, Cash Equivalents and Marketable Securities Held to Maturity",
        "label": "Cash, Cash Equivalents and Marketable Securities Held to Maturity [Table Text Block]",
        "documentation": "Tabular disclosure of the components of cash, cash equivalents, and marketable securities held to maturity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable, reserve for doubtful accounts",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r199",
      "r287",
      "r303"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture",
        "terseLabel": "Exercise of stock options and vesting of stock units (in shares)",
        "totalLabel": "Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture, Total",
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r117",
      "r118",
      "r158"
     ]
    },
    "us-gaap_OtherNonoperatingIncomeExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherNonoperatingIncomeExpenseAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Nonoperating Income (Expense) [Abstract]",
        "terseLabel": "Other income (expenses):"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesFairValueDisclosure",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Balance as of September 30 , 2023",
        "totalLabel": "Liabilities, Fair Value Disclosure, Total",
        "label": "Liabilities, Fair Value Disclosure",
        "terseLabel": "Liabilities, fair value",
        "verboseLabel": "Balance as of December 31, 2020",
        "periodStartLabel": "Balance as of December 31, 2022",
        "documentation": "Fair value of financial and nonfinancial obligations."
       }
      }
     },
     "auth_ref": [
      "r97"
     ]
    },
    "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationConsiderationTransferredLiabilitiesIncurred",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Increase in fair value of contingent consideration earnouts",
        "label": "Business Combination, Consideration Transferred, Liabilities Incurred",
        "terseLabel": "Business combination contingent consideration",
        "negatedLabel": "Decrease in fair value of contingent consideration earnouts",
        "documentation": "Amount of liabilities incurred by the acquirer as part of consideration transferred in a business combination."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r5",
      "r91",
      "r471"
     ]
    },
    "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Consideration Transferred, Equity Interests Issued and Issuable",
        "terseLabel": "Equity consideration",
        "verboseLabel": "Value of common stock issued",
        "documentation": "Amount of equity interests of the acquirer, including instruments or interests issued or issuable in consideration for the business combination."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r5"
     ]
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Income (Loss)",
        "totalLabel": "Income from operations",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r263",
      "r270",
      "r275",
      "r278",
      "r758"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 19.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Other Operating Assets",
        "totalLabel": "Increase (Decrease) in Other Operating Assets, Total",
        "negatedLabel": "Other assets",
        "documentation": "Amount of increase (decrease) in operating assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r37",
      "r182",
      "r210",
      "r211",
      "r212",
      "r224",
      "r225",
      "r226",
      "r228",
      "r236",
      "r238",
      "r256",
      "r296",
      "r302",
      "r387",
      "r442",
      "r443",
      "r444",
      "r456",
      "r457",
      "r480",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r497",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r540",
      "r602",
      "r603",
      "r604",
      "r623",
      "r698"
     ]
    },
    "us-gaap_ShareBasedCompensationAwardTrancheOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationAwardTrancheOneMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Tranche One [Member]",
        "terseLabel": "Vest Over Three Year",
        "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsFairValueDisclosure",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Assets, Fair Value Disclosure, Total",
        "label": "Assets, Fair Value Disclosure",
        "terseLabel": "Assets, fair value",
        "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r97"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r182",
      "r224",
      "r225",
      "r226",
      "r228",
      "r236",
      "r238",
      "r296",
      "r302",
      "r442",
      "r443",
      "r444",
      "r456",
      "r457",
      "r480",
      "r483",
      "r484",
      "r487",
      "r497",
      "r602",
      "r604",
      "r623",
      "r983"
     ]
    },
    "us-gaap_InterestExpenseDebtExcludingAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestExpenseDebtExcludingAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails": {
       "parentTag": "us-gaap_InterestExpenseDebt",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense, Debt, Excluding Amortization",
        "terseLabel": "Contractual interest expense",
        "documentation": "Represents the portion of interest incurred in the period on debt arrangements that was charged against earnings, excluding amortization of debt discount (premium) and financing costs."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r366",
      "r764",
      "r765"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesAcquisitions",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Shares, Acquisitions",
        "terseLabel": "Issuance of commons stock pursuant to the acquisition, (in shares)",
        "documentation": "Number of shares of stock issued during the period pursuant to acquisitions."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r118",
      "r158"
     ]
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysInc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "Acquisition of FlexBiosys, Inc.",
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)."
       }
      }
     },
     "auth_ref": [
      "r161",
      "r466"
     ]
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other income (expenses)",
        "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": [
      "r138"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised | shares",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r117",
      "r118",
      "r158",
      "r423"
     ]
    },
    "us-gaap_RestructuringCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restructuring Costs",
        "label": "Restructuring Costs",
        "totalLabel": "Restructuring Costs, Total",
        "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": [
      "r14"
     ]
    },
    "us-gaap_RevenuesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenuesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenues [Abstract]",
        "terseLabel": "Revenue:"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "IndefiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indefinite Lived Intangible Assets Accumulated Amortization",
        "label": "Indefinite Lived Intangible Assets Accumulated Amortization",
        "negatedLabel": "Accumulated Amortization"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component [Domain]",
        "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": [
      "r18",
      "r182",
      "r210",
      "r211",
      "r212",
      "r224",
      "r225",
      "r226",
      "r228",
      "r236",
      "r238",
      "r256",
      "r296",
      "r302",
      "r387",
      "r442",
      "r443",
      "r444",
      "r456",
      "r457",
      "r480",
      "r482",
      "r483",
      "r484",
      "r485",
      "r487",
      "r497",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r540",
      "r602",
      "r603",
      "r604",
      "r623",
      "r698"
     ]
    },
    "rgen_NonEmployeeDirectorStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "NonEmployeeDirectorStockOptionMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non Employee Director Stock Option[Member]",
        "label": "Non Employee Director Stock Option[Member]",
        "terseLabel": "Non-Employee Directors"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_FlexbiosysIncMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "FlexbiosysIncMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "FlexBiosys",
        "label": "FlexBiosys, Inc. [Member]",
        "documentation": "FlexBiosys, Inc.",
        "verboseLabel": "FlexBiosys, Inc."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "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": [
      "r8",
      "r17",
      "r39",
      "r482",
      "r485",
      "r540",
      "r602",
      "r603",
      "r882",
      "r883",
      "r884",
      "r893",
      "r894",
      "r895"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "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": []
    },
    "us-gaap_DeferredRevenueCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredRevenueCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Revenue, Current",
        "terseLabel": "Deferred revenue",
        "totalLabel": "Deferred Revenue, Current, Total",
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r879"
     ]
    },
    "rgen_RDAndCommercializationBasedPaymentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "RDAndCommercializationBasedPaymentsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "R&amp;D and Commercialization-based payments.",
        "label": "R&amp;D and Commercialization-based Payments [Member]",
        "terseLabel": "R&amp;D and Commercialization-based Payments"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AmortizationOfIntangibleAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets",
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r59",
      "r65"
     ]
    },
    "rgen_MeasurementInputEarnoutDiscountRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "MeasurementInputEarnoutDiscountRateMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Earnout Discount Rate.",
        "label": "Measurement Input Earnout Discount Rate [Member]",
        "terseLabel": "Earnout Discount Rate"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AmortizationOfFinancingCosts",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails": {
       "parentTag": "us-gaap_InterestExpenseDebt",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Amortization of debt issuance costs",
        "terseLabel": "Amortization of debt issuance costs",
        "label": "Amortization of Debt Issuance Costs",
        "verboseLabel": "Amortization of debt issuance costs",
        "documentation": "Amount of amortization expense attributable to debt issuance costs."
       }
      }
     },
     "auth_ref": [
      "r130",
      "r367",
      "r527",
      "r888"
     ]
    },
    "rgen_ReconciliationOfBasicAndDilutedSharesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ReconciliationOfBasicAndDilutedSharesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Reconciliation of Basic and Diluted Shares [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_MeasurementInputProbabilityOfSuccessMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "MeasurementInputProbabilityOfSuccessMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Probability of Success.",
        "label": "Measurement Input Probability of Success [Member]",
        "terseLabel": "Probability of Success"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Zero Point Three Seven Five Percent Convertible Senior Notes Due Twenty Twenty Four [Member]",
        "terseLabel": "0.375% Convertible Senior Notes due 2024"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings (Accumulated Deficit)",
        "periodEndLabel": "Retained Earnings (Accumulated Deficit), Ending Balance",
        "periodStartLabel": "Retained Earnings (Accumulated Deficit), Beginning Balance",
        "terseLabel": "Accumulated earnings",
        "totalLabel": "Retained Earnings (Accumulated Deficit), Total",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r158",
      "r584",
      "r606",
      "r611",
      "r618",
      "r655",
      "r782"
     ]
    },
    "rgen_MeasurementInputRevenueVolumeDiscountRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "MeasurementInputRevenueVolumeDiscountRateMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Revenue &amp; Volume Discount Rate.",
        "label": "Measurement Input Revenue &amp; Volume Discount Rate [Member]",
        "terseLabel": "Revenue &amp; Volume Discount Rate"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "StockIssuedDuringPeriodSharesContingentConsiderationEarnoutPayment",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Issued During Period, shares,contingent consideration earnout payment.",
        "label": "Stock Issued During Period, Shares,Contingent Consideration Earnout Payment",
        "terseLabel": "Issuance of common stock pursuant to the Avitide, Inc.contingent consideration earnout payment"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "StockIssuedDuringPeriodValueContingentConsiderationEarnoutPayment",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock issued during period, value,contingent consideration earnout payment",
        "label": "Stock Issued During Period, Value,Contingent Consideration Earnout Payment",
        "terseLabel": "Issuance of common stock pursuant to the acquisition of FlexBiosys, Inc."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_DilutiveEffectOnSharesOfConversionPremium": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DilutiveEffectOnSharesOfConversionPremium",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dilutive effect on shares of conversion premium.",
        "label": "Dilutive Effect On Shares Of Conversion Premium",
        "terseLabel": "Dilutive effect on shares of conversion premium"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncrementalCommonSharesAttributableToConversionOfDebtSecurities",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "parentTag": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Conversion of Debt Securities",
        "terseLabel": "Convertible Senior Notes",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of convertible debt securities using the if-converted method."
       }
      }
     },
     "auth_ref": [
      "r246",
      "r247",
      "r251"
     ]
    },
    "rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Schedule of Intangible Assets",
        "documentation": "Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]",
        "label": "Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "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": [
      "r224",
      "r225",
      "r226",
      "r256",
      "r555",
      "r613",
      "r634",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r654",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r673",
      "r676",
      "r677",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695",
      "r698",
      "r788"
     ]
    },
    "rgen_FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "FairValueOfContingentConsiderationEarnoutsRelatedToAcquisition",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of contingent consideration earnouts related to acquisition.",
        "label": "Fair Value of Contingent Consideration Earnouts Related to Acquisition",
        "terseLabel": "Fair value of contingent consideration earnouts related to acquisition"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_IntangibleAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "IntangibleAssetsLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intangible Assets [Line Items]",
        "label": "Intangible Assets [Line Items]",
        "terseLabel": "Intangible Assets [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ChangeInContractWithCustomerAssetAndLiabilityAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenue recognized during periods presented relating to:",
        "label": "Change in Contract with Customer, Asset and Liability [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGain",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Marketable securities, Gross Unrealized Gains",
        "label": "Available for Sale Securities, Accumulated Gross Unrealized Gain",
        "documentation": "Available for sale securities, accumulated gross unrealized gain."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherNoncashIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Noncash Income (Expense)",
        "totalLabel": "Other Noncash Income (Expense), Total",
        "negatedLabel": "Other",
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other."
       }
      }
     },
     "auth_ref": [
      "r143"
     ]
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient."
       }
      }
     },
     "auth_ref": [
      "r360",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r503",
      "r550",
      "r551",
      "r552",
      "r762",
      "r763",
      "r774",
      "r775",
      "r776"
     ]
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Accrued Liabilities, Current",
        "terseLabel": "Other",
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r30"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurement Inputs and Valuation Techniques [Table Text Block]",
        "terseLabel": "Schedule of Contingent Consideration Earnout Expect to be Required to Settle Include Significant Unobservable Inputs",
        "documentation": "Tabular disclosure of input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis."
       }
      }
     },
     "auth_ref": [
      "r20"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "us-gaap_NetIncomeLossAttributableToParentDiluted": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLossAttributableToParentDiluted",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss) Attributable to Parent, Diluted",
        "terseLabel": "Numerator for diluted earnings per share - net income available to common stockholders after the effect of dilutive securities",
        "totalLabel": "Net Income (Loss) Attributable to Parent, Diluted, Total",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent, and includes adjustments resulting from the assumption that dilutive convertible securities were converted, options or warrants were exercised, or that other shares were issued upon the satisfaction of certain conditions."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued",
        "totalLabel": "Preferred Stock, Shares Issued, Total",
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r374"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToAdditionalPaidInCapitalOther",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Additional Paid in Capital, Other",
        "terseLabel": "Other",
        "documentation": "Amount of other increase (decrease) in additional paid in capital (APIC)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueByMeasurementFrequencyAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Frequency [Axis]",
        "documentation": "Information by measurement frequency."
       }
      }
     },
     "auth_ref": [
      "r502",
      "r503",
      "r505",
      "r506",
      "r508"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income",
        "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": [
      "r40",
      "r207",
      "r209",
      "r214",
      "r574",
      "r590"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized",
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r654"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Outstanding",
        "periodEndLabel": "Preferred Stock, Shares Outstanding, Ending Balance",
        "periodStartLabel": "Preferred Stock, Shares Outstanding, Beginning Balance",
        "terseLabel": "Preferred stock, shares outstanding",
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r654",
      "r672",
      "r983",
      "r984"
     ]
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk [Line Items]",
        "terseLabel": "Concentration Risk [Line Items]",
        "verboseLabel": "Concentration Risk [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": [
      "r735"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type [Axis]",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r56",
      "r102",
      "r103",
      "r284",
      "r735",
      "r874"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r502",
      "r503",
      "r507"
     ]
    },
    "us-gaap_FairValueByBalanceSheetGroupingTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueByBalanceSheetGroupingTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, by Balance Sheet Grouping [Table]",
        "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r100",
      "r101"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r374"
     ]
    },
    "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]",
        "terseLabel": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis",
        "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)."
       }
      }
     },
     "auth_ref": [
      "r502",
      "r503"
     ]
    },
    "us-gaap_ConcentrationRiskTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk [Table]",
        "terseLabel": "Concentration Risk [Table]",
        "verboseLabel": "Concentration Risk [Table]",
        "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r53",
      "r56",
      "r57",
      "r102",
      "r165",
      "r735"
     ]
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payment, Tax Withholding, Share-Based Payment Arrangement",
        "negatedLabel": "Payment of tax withholding obligation on vesting of restricted stock",
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r216"
     ]
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Measurement period adjustment - FlexBiosys",
        "terseLabel": "Measurement period adjustment - FlexBiosys",
        "label": "Goodwill, Purchase Accounting Adjustments",
        "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r914"
     ]
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "verboseLabel": "Accrued Liabilities",
        "documentation": "Tabular disclosure of the components of accrued liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ResearchAndDevelopmentExpenseMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development Expense [Member]",
        "terseLabel": "Research and development",
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed",
        "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": [
      "r162"
     ]
    },
    "us-gaap_RestructuringCostAndReserveLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringCostAndReserveLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring Cost and Reserve [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": [
      "r326",
      "r327",
      "r328",
      "r329",
      "r333",
      "r334",
      "r335"
     ]
    },
    "us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAndOtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax and Other Liabilities, Noncurrent",
        "terseLabel": "Deferred tax liabilities",
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences, with jurisdictional netting, and liabilities classified as noncurrent and other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestructuringCostAndReserveAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringCostAndReserveAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring Type [Axis]",
        "documentation": "Information by type of restructuring cost."
       }
      }
     },
     "auth_ref": [
      "r326",
      "r327",
      "r333",
      "r334"
     ]
    },
    "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/EarningsPerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Weighted Average Number of Shares [Table Text Block]",
        "terseLabel": "Basic and Diluted Weighted Average Shares Outstanding",
        "documentation": "Tabular disclosure of the weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit)."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "verboseLabel": "Inventories",
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r27",
      "r124",
      "r125",
      "r126"
     ]
    },
    "us-gaap_TextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TextBlockAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Text Block [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureTextBlockAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Disclosure Text Block [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r858"
     ]
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Exercise Price",
        "terseLabel": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r860"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r856"
     ]
    },
    "srt_TitleOfIndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]",
        "terseLabel": "Title of Individual [Axis]"
       }
      }
     },
     "auth_ref": [
      "r899",
      "r962"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Incentive options, vesting period",
        "verboseLabel": "Restricted stock units and options, vesting period",
        "label": "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": [
      "r780"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r857"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Unrecognized compensation cost, weighted average remaining requisite service period",
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r441"
     ]
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AcquiredFiniteLivedIntangibleAssetResidualValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Acquired Finite-Lived Intangible Asset, Residual Value",
        "terseLabel": "Intangible Asset Residual Value",
        "documentation": "The aggregate expected value at the end of their useful life of a major finite-lived intangible asset class acquired during the period either individually or as part of a group of assets (in either an asset acquisition or business combination). 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": [
      "r61"
     ]
    },
    "ecd_TradingArrAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement [Axis]",
        "terseLabel": "Trading Arrangement:"
       }
      }
     },
     "auth_ref": [
      "r863"
     ]
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]",
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed."
       }
      }
     },
     "auth_ref": [
      "r224",
      "r225",
      "r226",
      "r256",
      "r555",
      "r613",
      "r634",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r654",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r673",
      "r676",
      "r677",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695",
      "r698",
      "r788"
     ]
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_MnpiDiscTimedForCompValFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r856"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r857"
     ]
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MachineryAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Machinery and Equipment, Gross",
        "terseLabel": "Equipment",
        "totalLabel": "Machinery and Equipment, Gross, Total",
        "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": [
      "r152"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "periodEndLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Ending Balance",
        "periodStartLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Beginning Balance",
        "totalLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Total",
        "negatedLabel": "Less - Accumulated depreciation",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r67",
      "r190",
      "r586"
     ]
    },
    "us-gaap_RelatedPartyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party, Type [Domain]",
        "terseLabel": "Related Party [Domain]",
        "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests."
       }
      }
     },
     "auth_ref": [
      "r410",
      "r544",
      "r545",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r671",
      "r673",
      "r705"
     ]
    },
    "us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionEffectiveDateOfAcquisition1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Effective Date of Acquisition",
        "verboseLabel": "Business combination date of acquistion",
        "documentation": "Date when the acquirer obtains control of the acquiree, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r3",
      "r19"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r864"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Underlying Securities Amount",
        "terseLabel": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r859"
     ]
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r864"
     ]
    },
    "srt_NorthAmericaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "NorthAmericaMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "North America [Member]",
        "terseLabel": "North America"
       }
      }
     },
     "auth_ref": [
      "r985",
      "r986",
      "r987",
      "r988"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "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": [
      "r38",
      "r39",
      "r127",
      "r198",
      "r583",
      "r607",
      "r611"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r861"
     ]
    },
    "srt_EuropeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "EuropeMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Europe [Member]",
        "terseLabel": "Europe"
       }
      }
     },
     "auth_ref": [
      "r985",
      "r986",
      "r987",
      "r988"
     ]
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r862"
     ]
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]",
        "terseLabel": "Insider Trading Arrangements:"
       }
      }
     },
     "auth_ref": [
      "r863"
     ]
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r863"
     ]
    },
    "us-gaap_SubsequentEventsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "negatedLabel": "Accumulated Amortization",
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r192",
      "r319"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three",
        "terseLabel": "2025",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two",
        "terseLabel": "2024",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2023 (remaining three months)",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillAcquiredDuringPeriod",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill, Acquired During Period",
        "terseLabel": "Acquisition of FlexBiosys, Inc",
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination."
       }
      }
     },
     "auth_ref": [
      "r307",
      "r760"
     ]
    },
    "us-gaap_MoneyMarketFundsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MoneyMarketFundsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Money Market Funds [Member]",
        "terseLabel": "Money Market",
        "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities."
       }
      }
     },
     "auth_ref": [
      "r930"
     ]
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "terseLabel": "Smaller reporting company",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r797"
     ]
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes",
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information."
       }
      }
     },
     "auth_ref": [
      "r222",
      "r446",
      "r451",
      "r452",
      "r453",
      "r458",
      "r462",
      "r463",
      "r464",
      "r619"
     ]
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Emerging growth company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables"
     ],
     "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": [
      "r928"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Asset, Useful Life",
        "verboseLabel": "Weighted Average Useful Life (in years)",
        "terseLabel": "Expected useful life",
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_TwoThousandAndTwentyFourMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "TwoThousandAndTwentyFourMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2024",
        "label": "Two Thousand and Twenty Four [Member]",
        "documentation": "Two thousand and twenty four."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life",
        "terseLabel": "Weighted Average Useful Life (in years)",
        "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": [
      "r148"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "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": [
      "r533"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Line Items]",
        "verboseLabel": "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": [
      "r400",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of product revenue",
        "totalLabel": "Cost of Goods and Services Sold, Total",
        "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": [
      "r132",
      "r555"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r400",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773"
     ]
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementFrequencyDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Frequency [Domain]",
        "documentation": "Measurement frequency."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party, Type [Axis]",
        "terseLabel": "Related Party [Axis]",
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests."
       }
      }
     },
     "auth_ref": [
      "r410",
      "r544",
      "r545",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r671",
      "r673",
      "r705",
      "r963"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2027",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxAuthorityAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority [Axis]",
        "terseLabel": "Income Tax Authority [Axis]",
        "documentation": "Information by tax jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r16"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO [Member]",
        "terseLabel": "PEO"
       }
      }
     },
     "auth_ref": [
      "r845"
     ]
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Assets acquired under operating leases",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r535",
      "r781"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders' equity:"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r832"
     ]
    },
    "rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsEstimatedFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents, Estimated Fair Value",
        "label": "Debt Securities Held to Maturity and Cash and Cash Equivalents Estimated Fair Value",
        "documentation": "Debt securities held to maturity and cash and cash equivalents estimated fair value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four",
        "terseLabel": "2026",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-NEOs [Member]",
        "terseLabel": "Non-NEOs"
       }
      }
     },
     "auth_ref": [
      "r807",
      "r818",
      "r828",
      "r845",
      "r853"
     ]
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r801",
      "r812",
      "r822",
      "r847"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2028 and thereafter",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Five",
        "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_MilliporeSigmaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "MilliporeSigmaMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Millipore Sigma.",
        "label": "Millipore Sigma [Member]",
        "terseLabel": "MilliporeSigma"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r845"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r810",
      "r818",
      "r828",
      "r845",
      "r853",
      "r857",
      "r865"
     ]
    },
    "rgen_LongTermContingentConsideration": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "LongTermContingentConsideration",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Long-term contingent consideration.",
        "label": "Long Term Contingent Consideration",
        "terseLabel": "Long-term contingent consideration"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r810",
      "r818",
      "r828",
      "r845",
      "r853",
      "r857",
      "r865"
     ]
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Text Block]",
        "terseLabel": "Stockholders' Equity",
        "documentation": "The entire disclosure for equity."
       }
      }
     },
     "auth_ref": [
      "r155",
      "r220",
      "r373",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r387",
      "r488",
      "r701",
      "r703",
      "r732"
     ]
    },
    "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringAndRelatedActivitiesDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlan"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring and Related Activities Disclosure [Text Block]",
        "terseLabel": "Restructuring Plan",
        "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": [
      "r324",
      "r325",
      "r327",
      "r330",
      "r336"
     ]
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]",
        "terseLabel": "Aggregate Intrinsic Value"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestructuringCharges": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringCharges",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Restructuring Charges, Total",
        "label": "Restructuring Charges",
        "terseLabel": "Restructuring charges",
        "documentation": "Amount 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": [
      "r14",
      "r331",
      "r333",
      "r919"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingencies"
     ],
     "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": [
      "r153",
      "r337",
      "r338",
      "r736",
      "r920"
     ]
    },
    "rgen_DebtSecuritiesHeldToMaturityAmortisedCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtSecuritiesHeldToMaturityAmortisedCost",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt securities held to maturity amortised cost.",
        "label": "Debt Securities Held to Maturity Amortised Cost",
        "terseLabel": "Marketable securities, Amortized Costs"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]",
        "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure"
       }
      }
     },
     "auth_ref": [
      "r800",
      "r811",
      "r821",
      "r846"
     ]
    },
    "rgen_MetenovaAbMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "MetenovaAbMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Metenova AB",
        "label": "Metenova AB [Member]",
        "documentation": "Metenova AB."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_FacilityAndOtherExitCostsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "FacilityAndOtherExitCostsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Facility and Other Exit Costs",
        "label": "Facility and Other Exit Costs [Member]",
        "documentation": "Facility and other exit costs."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SupplementalBalanceSheetDisclosuresTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Balance Sheet Disclosures [Text Block]",
        "verboseLabel": "Consolidated Balance Sheet Detail",
        "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity."
       }
      }
     },
     "auth_ref": [
      "r877"
     ]
    },
    "rgen_StockholdersEquityNoteDisclosureTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "StockholdersEquityNoteDisclosureTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stockholders Equity Note Disclosure [Table]",
        "label": "Stockholders Equity Note Disclosure [Table]",
        "terseLabel": "Stockholders Equity Note Disclosure [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date",
        "terseLabel": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r802",
      "r813",
      "r823",
      "r848"
     ]
    },
    "rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Earnings Per Share Basic And Diluted [Table]",
        "label": "Schedule Of Earnings Per Share Basic And Diluted [Table]",
        "terseLabel": "Schedule Of Earnings Per Share Basic And Diluted [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtSecuritiesHeldToMaturityAndCashAndCashEquivalentsAmortizedCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents, Amortized Costs",
        "label": "Debt Securities Held to Maturity and Cash and Cash Equivalents Amortized Costs",
        "documentation": "Debt securities held to maturity and cash and cash equivalents amortized costs."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r800",
      "r811",
      "r821",
      "r846"
     ]
    },
    "us-gaap_RestructuringReserve": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringReserve",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restructuring Liability",
        "label": "Restructuring Reserve",
        "periodEndLabel": "Restructuring Reserve, Ending Balance",
        "periodStartLabel": "Restructuring Reserve, Beginning Balance",
        "totalLabel": "Restructuring Reserve, Total",
        "documentation": "Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan."
       }
      }
     },
     "auth_ref": [
      "r327",
      "r332"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Expense (Benefit)",
        "totalLabel": "Deferred Income Tax Expense (Benefit), Total",
        "verboseLabel": "Deferred income taxes, net",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r160",
      "r175",
      "r460",
      "r461",
      "r892"
     ]
    },
    "rgen_NumberOfSharesBasicOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "NumberOfSharesBasicOutstanding",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares basic outstanding.",
        "label": "Number Of Shares Basic Outstanding",
        "verboseLabel": "Weighted average shares used in computing net income per share - basic"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r785",
      "r786",
      "r787",
      "r789",
      "r790",
      "r791",
      "r792",
      "r893",
      "r894",
      "r957",
      "r979",
      "r983"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Gross",
        "periodEndLabel": "Property, Plant and Equipment, Gross, Ending Balance",
        "periodStartLabel": "Property, Plant and Equipment, Gross, Beginning Balance",
        "totalLabel": "Total property, plant and equipment",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r152",
      "r189",
      "r587"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Attributable to Parent",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total stockholders' equity",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r118",
      "r121",
      "r122",
      "r145",
      "r656",
      "r672",
      "r699",
      "r700",
      "r782",
      "r794",
      "r891",
      "r905",
      "r960",
      "r983"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ScheduleOfRelatedPartyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfRelatedPartyTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule Of Related Party [Table]",
        "label": "Schedule Of Related Party [Table]",
        "terseLabel": "Schedule Of Related Party [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Net",
        "periodEndLabel": "Property, Plant and Equipment, Net, Ending Balance",
        "periodStartLabel": "Property, Plant and Equipment, Net, Beginning Balance",
        "terseLabel": "Property, plant and equipment, net",
        "totalLabel": "Total property, plant and equipment, net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r578",
      "r587",
      "r782"
     ]
    },
    "rgen_StockOptionAndIncentivePlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "StockOptionAndIncentivePlanMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Option and Incentive Plan [Member]",
        "label": "Stock Option And Incentive Plan [Member]",
        "terseLabel": "2018 Plan"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r806",
      "r817",
      "r827",
      "r852"
     ]
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r803",
      "r814",
      "r824",
      "r849"
     ]
    },
    "rgen_ApacOtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ApacOtherMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "APAC Other [Member]",
        "verboseLabel": "APAC/Other"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_SpectrumIncMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "SpectrumIncMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Spectrum Inc.",
        "label": "Spectrum Inc [Member]",
        "terseLabel": "Spectrum Inc.",
        "verboseLabel": "Spectrum Inc."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r803",
      "r814",
      "r824",
      "r849"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities Act 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": []
    },
    "rgen_RevenueAndVolumeBasedPaymentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "RevenueAndVolumeBasedPaymentsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue and volume based payments.",
        "label": "Revenue and Volume Based Payments [Member]",
        "terseLabel": "Revenue and Volume Based Payments"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r804",
      "r815",
      "r825",
      "r850"
     ]
    },
    "rgen_BioflexMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "BioflexMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "BioFlex [Member]",
        "label": "BioFlex [Member]",
        "terseLabel": "BioFlex"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture",
        "terseLabel": "Exercise of stock options and vesting of stock units",
        "totalLabel": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture, Total",
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r78",
      "r117",
      "r118",
      "r158"
     ]
    },
    "rgen_AvailableForSaleSecuritiesEstimatedFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AvailableForSaleSecuritiesEstimatedFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Marketable securities, Estimated Fair Value",
        "label": "Available for Sale Securities Estimated Fair Value",
        "documentation": "Available for sale securities estimated fair value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Options outstanding",
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r159"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r805",
      "r816",
      "r826",
      "r851"
     ]
    },
    "rgen_ScheduleOfIntangibleAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfIntangibleAssetsTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Intangible Assets [Table]",
        "label": "Schedule of Intangible Assets [Table]",
        "terseLabel": "Schedule of Intangible Assets [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Options exercisable at September 30, 2023",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r76"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vested and expected to vest at September 30, 2023",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r434"
     ]
    },
    "rgen_AvailableForSaleSecuritiesAmortizedCostBasis": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AvailableForSaleSecuritiesAmortizedCostBasis",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Marketable securities, Amortized Costs",
        "label": "Available for Sale Securities, Amortized Cost Basis",
        "documentation": "Available for sale securities, amortized cost basis."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ManufacturingLineExpansionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ManufacturingLineExpansionsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Manufacturing line expansions.",
        "label": "Manufacturing Line Expansions [Member]",
        "terseLabel": "Manufacturing line expansions"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r807",
      "r818",
      "r828",
      "r853"
     ]
    },
    "rgen_TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "TotalTradeAccountsReceivableRoyaltiesAndOtherReceivablesMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total trade accounts receivable royalties and other receivables.",
        "label": "Total Trade Accounts Receivable Royalties And Other Receivables [Member]",
        "terseLabel": "Total Trade Accounts Receivable Royalties And Other Receivables"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ProbabilityOfSuccess": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ProbabilityOfSuccess",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Probability of success.",
        "label": "Probability of Success",
        "terseLabel": "Probability of success"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ChiefCommercialOfficerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ChiefCommercialOfficerMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Chief Commercial Officer",
        "label": "Chief Commercial Officer [Member]",
        "documentation": "Chief commercial officer."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Net of Tax",
        "periodEndLabel": "Accumulated Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Net of Tax, Ending Balance",
        "periodStartLabel": "Translation adjustment",
        "terseLabel": "Translation adjustment",
        "documentation": "Accumulated adjustment, net of tax, that results from the process of translating subsidiary financial statements and foreign equity investments into the reporting currency from the functional currency of the reporting entity, net of reclassification of realized foreign currency translation gains or losses."
       }
      }
     },
     "auth_ref": [
      "r202",
      "r203",
      "r204",
      "r205",
      "r511"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase (decrease) in cash and cash equivalents",
        "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": [
      "r7",
      "r141"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and cash equivalents, end of period",
        "periodStartLabel": "Cash, cash equivalents and restricted cash, beginning of period",
        "totalLabel": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Total",
        "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": [
      "r46",
      "r141",
      "r218"
     ]
    },
    "us-gaap_CapitalizedComputerSoftwareGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CapitalizedComputerSoftwareGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Capitalized Computer Software, Gross",
        "terseLabel": "Computer hardware and software",
        "documentation": "Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software."
       }
      }
     },
     "auth_ref": [
      "r989"
     ]
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CustomerConcentrationRiskMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "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": [
      "r54",
      "r284"
     ]
    },
    "us-gaap_SalesRevenueNetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SalesRevenueNetMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue Benchmark [Member]",
        "terseLabel": "Sales Revenue",
        "verboseLabel": "Total Revenue",
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation."
       }
      }
     },
     "auth_ref": [
      "r284",
      "r873"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted (Note 12)",
        "label": "Earnings Per Share, 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": [
      "r215",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r243",
      "r249",
      "r250",
      "r251",
      "r255",
      "r498",
      "r499",
      "r575",
      "r591",
      "r756"
     ]
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReporting"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting Disclosure [Text Block]",
        "terseLabel": "Segment Reporting",
        "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": [
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r268",
      "r272",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r284"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Granted",
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options."
       }
      }
     },
     "auth_ref": [
      "r422"
     ]
    },
    "us-gaap_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised",
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares."
       }
      }
     },
     "auth_ref": [
      "r423"
     ]
    },
    "us-gaap_InterestOnConvertibleDebtNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestOnConvertibleDebtNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest on Convertible Debt, Net of Tax",
        "terseLabel": "Charges associated with convertible debt instruments, net of tax",
        "verboseLabel": "Interest charges associated with convertible debt instruments",
        "documentation": "Amount, after tax, of interest recognized on convertible debt instrument excluding interest on principal required to be paid in cash."
       }
      }
     },
     "auth_ref": [
      "r242",
      "r245",
      "r251"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Forfeited/expired/cancelled",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r431"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Awarded",
        "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": [
      "r429"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Weighted Average, Awarded",
        "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": "Weighted average grant date fair value of restricted stock units granted",
        "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": [
      "r429"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireBusinessesGross",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Cash consideration",
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r470"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Unvested at September 30, 2023",
        "periodStartLabel": "Unvested at December 31, 2022",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Unvested at June 30, 2021",
        "terseLabel": "Restricted stock units, outstanding",
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r426",
      "r427"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Weighted Average, Unvested at September 30, 2023",
        "periodStartLabel": "Weighted Average, Unvested at December 31,2022",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r426",
      "r427"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Total unrecognized compensation cost",
        "totalLabel": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total",
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r441"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r430"
     ]
    },
    "us-gaap_ScheduleOfProductInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfProductInformationTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Product Information [Table]",
        "documentation": "Schedule detailing quantitative information concerning products or product lines by product or product line."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "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": [
      "r0",
      "r128",
      "r171",
      "r263",
      "r270",
      "r275",
      "r278",
      "r576",
      "r588",
      "r758"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Equity award, grant date fair value",
        "terseLabel": "Equity award, grant date fair value",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value",
        "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash."
       }
      }
     },
     "auth_ref": [
      "r433"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities, Current",
        "terseLabel": "Accrued liabilities",
        "totalLabel": "Total accrued 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": [
      "r30"
     ]
    },
    "us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentConvertibleThresholdConsecutiveTradingDays1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Convertible, Threshold Consecutive Trading Days",
        "documentation": "Threshold period of specified consecutive trading days within which common stock price to conversion price of convertible debt instrument must exceed threshold percentage for specified number of trading days to trigger conversion feature."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average, Vested",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement."
       }
      }
     },
     "auth_ref": [
      "r430"
     ]
    },
    "us-gaap_CostOfSalesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfSalesMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of product revenue",
        "documentation": "Primary financial statement caption encompassing cost of sales."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostsAndExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostsAndExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Costs and Expenses",
        "totalLabel": "Total costs and operating expenses",
        "documentation": "Total costs of sales and operating expenses for the period."
       }
      }
     },
     "auth_ref": [
      "r131"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current 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": [
      "r881"
     ]
    },
    "us-gaap_RisksAndUncertaintiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RisksAndUncertaintiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Risks and Uncertainties [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromStockOptionsExercised",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Stock Options Exercised",
        "terseLabel": "Proceeds from exercise of stock options",
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r24"
     ]
    },
    "us-gaap_CashAcquiredFromAcquisition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAcquiredFromAcquisition",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Acquired from Acquisition",
        "documentation": "The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired business)."
       }
      }
     },
     "auth_ref": [
      "r42"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SellingGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Selling, general and administrative",
        "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": [
      "r134"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "periodEndLabel": "Cash and Cash Equivalents, at Carrying Value, Ending Balance",
        "periodStartLabel": "Cash and Cash Equivalents, at Carrying Value, Beginning Balance",
        "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": [
      "r46",
      "r188",
      "r750"
     ]
    },
    "us-gaap_CostsAndExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostsAndExpensesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Costs and Expenses [Abstract]",
        "verboseLabel": "Costs and operating expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerRelationshipsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CustomerRelationshipsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "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": [
      "r90"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Incentive options, vesting period",
        "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": [
      "r76"
     ]
    },
    "us-gaap_PaymentsForRestructuring": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForRestructuring",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Amounts Paid",
        "label": "Payments for Restructuring",
        "documentation": "Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation."
       }
      }
     },
     "auth_ref": [
      "r327",
      "r886"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "terseLabel": "Aggregate intrinsic value of stock options exercised",
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares."
       }
      }
     },
     "auth_ref": [
      "r433"
     ]
    },
    "us-gaap_AdjustmentForAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentForAmortization",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization",
        "totalLabel": "Total",
        "documentation": "The aggregate amount of recurring noncash expense charged against earnings in the period to allocate the cost of assets over their estimated remaining economic lives."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r65"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures",
        "terseLabel": "Granted | shares",
        "totalLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures, Total",
        "documentation": "Net number of share options (or share units) granted during the period."
       }
      }
     },
     "auth_ref": [
      "r938"
     ]
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current",
        "totalLabel": "Total current assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r186",
      "r201",
      "r221",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r473",
      "r475",
      "r512",
      "r782",
      "r923",
      "r924",
      "r964"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted average grant date fair value of share-based awards granted",
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology."
       }
      }
     },
     "auth_ref": [
      "r432"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Options outstanding at September 30, 2023",
        "periodStartLabel": "Options outstanding at December 31, 2022",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "terseLabel": "Stock options, weighted average exercise price",
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r418",
      "r419"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Options outstanding at September 30, 2023 | shares",
        "periodStartLabel": "Options outstanding at December 31, 2022 | shares",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number",
        "terseLabel": "Stock options, outstanding",
        "documentation": "Number of options outstanding, including both vested and non-vested options."
       }
      }
     },
     "auth_ref": [
      "r418",
      "r419"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "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": [
      "r28",
      "r782"
     ]
    },
    "us-gaap_DepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "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": [
      "r14",
      "r66"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value",
        "terseLabel": "Options outstanding",
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding."
       }
      }
     },
     "auth_ref": [
      "r76"
     ]
    },
    "us-gaap_AssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Noncurrent",
        "totalLabel": "Total noncurrent assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r221",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r473",
      "r475",
      "r512",
      "r923",
      "r924",
      "r964"
     ]
    },
    "srt_MajorCustomersAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MajorCustomersAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "auth_ref": [
      "r284",
      "r769",
      "r928",
      "r977",
      "r978"
     ]
    },
    "us-gaap_TypeOfRestructuringDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TypeOfRestructuringDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Type of Restructuring [Domain]",
        "documentation": "Identification of the types of restructuring costs."
       }
      }
     },
     "auth_ref": [
      "r326",
      "r327",
      "r333",
      "r334"
     ]
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DerivativeContractTypeDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "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": [
      "r642",
      "r645",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r667",
      "r668",
      "r669",
      "r670",
      "r686",
      "r687",
      "r688",
      "r689",
      "r692",
      "r693",
      "r694",
      "r695",
      "r715",
      "r716",
      "r717",
      "r718",
      "r785",
      "r787"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueDisclosuresTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements",
        "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": [
      "r501"
     ]
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill, Foreign Currency Translation Gain (Loss)",
        "negatedLabel": "Cumulative translation adjustment",
        "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r311"
     ]
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NoncompeteAgreementsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncompete Agreements [Member]",
        "terseLabel": "Non-compete agreements",
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party."
       }
      }
     },
     "auth_ref": [
      "r89"
     ]
    },
    "us-gaap_EmployeeSeveranceMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeSeveranceMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Severance &amp; employee-related costs",
        "label": "Employee Severance [Member]",
        "documentation": "Termination of an employee associated with exit from or disposal of business activities or restructurings pursuant to a plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfRestructuringAndRelatedCostsTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Activity Related to Restructuring Plan",
        "label": "Restructuring and Related Costs [Table Text Block]",
        "documentation": "Tabular disclosure of costs incurred for restructuring including, but not limited to, exit and disposal activities, remediation, implementation, integration, asset impairment, and charges against earnings from the write-down of assets."
       }
      }
     },
     "auth_ref": [
      "r68",
      "r70",
      "r71"
     ]
    },
    "us-gaap_RestructuringReserveSettledWithoutCash2": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringReserveSettledWithoutCash2",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Non-Cash Restructuring Items",
        "terseLabel": "Noncash Restructuirng Items",
        "label": "Restructuring Reserve, Settled without Cash",
        "documentation": "Amount of decrease in the reserve for full or partial settlement through consideration other than cash."
       }
      }
     },
     "auth_ref": [
      "r327",
      "r334"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDateAmortizedCostBasis",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total, Amortized Costs",
        "label": "Debt Securities, Available-for-Sale, Maturity, Allocated and Single Maturity Date, Amortized Cost",
        "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date."
       }
      }
     },
     "auth_ref": [
      "r901",
      "r902",
      "r974"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Value, Issued",
        "periodEndLabel": "Preferred Stock, Value, Issued, Ending Balance",
        "periodStartLabel": "Preferred Stock, Value, Issued, Beginning Balance",
        "terseLabel": "Preferred stock, $0.01 par value, 5,000,000 shares authorized, no shares issued or outstanding",
        "totalLabel": "Preferred Stock, Value, Issued, Total",
        "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": [
      "r117",
      "r581",
      "r782"
     ]
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Noncurrent",
        "totalLabel": "Total noncurrent liabilities",
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r111",
      "r112",
      "r113",
      "r116",
      "r221",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r474",
      "r475",
      "r476",
      "r512",
      "r923",
      "r964",
      "r965"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Goodwill and Intangible Assets",
        "documentation": "The entire disclosure for goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r147"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r118"
     ]
    },
    "rgen_RestrictedStockAndOptionToPurchaseCommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "RestrictedStockAndOptionToPurchaseCommonStockMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Stock and Option to Purchase Common Stock",
        "label": "Restricted Stock and Option to Purchase Common Stock [Member]",
        "documentation": "Restricted stock and option to purchase common stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfRestructuringAndRelatedCostsTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Restructuring and Related Costs [Table]",
        "documentation": "Table presenting the description of the restructuring costs, such as the expected cost; the costs incurred during the period; the cumulative costs incurred as of the balance sheet date; the income statement caption within which the restructuring charges recognized for the period are included; and the amount of and periodic changes to an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost by type of restructuring."
       }
      }
     },
     "auth_ref": [
      "r326",
      "r327",
      "r328",
      "r329",
      "r333",
      "r334",
      "r335"
     ]
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets Amortization Expense [Table Text Block]",
        "verboseLabel": "Schedule of Amortization Expense for Amortized Intangible Assets",
        "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedStockUnitsRSUMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Restricted Stock Unit",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "RestrictedStockUnitsRSUMember",
        "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_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "Summary of Significant Accounting Policies",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r144",
      "r219"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Recurring and Nonrecurring [Table]",
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis."
       }
      }
     },
     "auth_ref": [
      "r502",
      "r503",
      "r507"
     ]
    },
    "us-gaap_ProfessionalFees": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProfessionalFees",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Professional Fees",
        "terseLabel": "Spectrum Acquisition, tax preparation and other fees",
        "documentation": "A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer."
       }
      }
     },
     "auth_ref": [
      "r793",
      "r981",
      "r982"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesSingleMaturityDate",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total, Estimated Fair Value",
        "label": "Debt Securities, Available-for-Sale, Maturity, Allocated and Single Maturity Date, Fair Value",
        "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date."
       }
      }
     },
     "auth_ref": [
      "r901",
      "r902",
      "r975"
     ]
    },
    "rgen_BusinessCombinationConsiderationIndemnificationEscrow": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "BusinessCombinationConsiderationIndemnificationEscrow",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination Consideration Indemnification Escrow",
        "label": "Business Combination Consideration Indemnification Escrow",
        "terseLabel": "Business acquisition, Indemnification escrow"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentConvertibleThresholdTradingDays": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentConvertibleThresholdTradingDays",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Convertible, Threshold Trading Days",
        "documentation": "Threshold number of specified trading days that common stock price to conversion price of convertible debt instruments must exceed threshold percentage within a specified consecutive trading period to trigger conversion feature."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r835"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory",
        "terseLabel": "Inventory",
        "documentation": "The amount of inventory recognized as of the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r87"
     ]
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value."
       }
      }
     },
     "auth_ref": [
      "r360",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r550",
      "r551",
      "r552",
      "r762",
      "r763",
      "r774",
      "r775",
      "r776"
     ]
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]",
        "documentation": "A table or schedule providing information pertaining to long-term 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 company, if longer."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r73",
      "r74",
      "r104",
      "r105",
      "r107",
      "r109",
      "r156",
      "r157",
      "r223",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r528",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r890"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r836"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r837"
     ]
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r864"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment, Total",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "terseLabel": "Property and equipment",
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r87"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "Selling, general and administrative",
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles",
        "terseLabel": "Fair Value",
        "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r87"
     ]
    },
    "us-gaap_MeasurementInputPriceVolatilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MeasurementInputPriceVolatilityMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Input, Price Volatility [Member]",
        "terseLabel": "Volatility",
        "documentation": "Measurement input using rate at which price of security will increase (decrease) for given set of returns."
       }
      }
     },
     "auth_ref": [
      "r958"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Award split, percentage",
        "terseLabel": "Award split, percentage",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage",
        "documentation": "Percentage of vesting of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r931"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r864"
     ]
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r836"
     ]
    },
    "us-gaap_IntangibleAssetsGrossExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IntangibleAssetsGrossExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Gross (Excluding Goodwill)",
        "terseLabel": "Gross Carrying Value",
        "totalLabel": "Intangible Assets, Gross (Excluding Goodwill), Total",
        "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r191"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r864"
     ]
    },
    "us-gaap_MeasurementInputTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MeasurementInputTypeDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Input Type [Domain]",
        "documentation": "Measurement input used to determine value of asset and liability."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "totalLabel": "Increase (Decrease) in Prepaid Expense and Other Assets, Total",
        "negatedLabel": "Prepaid expenses and other assets",
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Domain]",
        "terseLabel": "Relationship to Entity [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssued1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssued1",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued",
        "terseLabel": "Fair value of common stock issued for acquisition",
        "documentation": "The fair value of stock issued in noncash financing activities."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r48",
      "r49"
     ]
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r836"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r865"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r836"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r865"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Termination Date",
        "terseLabel": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r866"
     ]
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r837"
     ]
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other investing activities",
        "terseLabel": "Other investing activities",
        "label": "Payments for (Proceeds from) Other Investing Activities",
        "documentation": "Amount of cash (inflow) outflow from investing activities classified as other."
       }
      }
     },
     "auth_ref": [
      "r872",
      "r885"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Title",
        "terseLabel": "Title"
       }
      }
     },
     "auth_ref": [
      "r865"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Duration",
        "terseLabel": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r867"
     ]
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DerivativeInstrumentRiskAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instrument [Axis]",
        "documentation": "Information by type of derivative contract."
       }
      }
     },
     "auth_ref": [
      "r93",
      "r94",
      "r95",
      "r96",
      "r642",
      "r645",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r667",
      "r668",
      "r669",
      "r670",
      "r686",
      "r687",
      "r688",
      "r689",
      "r692",
      "r693",
      "r694",
      "r695",
      "r715",
      "r716",
      "r717",
      "r718",
      "r755",
      "r785",
      "r787"
     ]
    },
    "srt_NameOfMajorCustomerDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "NameOfMajorCustomerDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "auth_ref": [
      "r284",
      "r769",
      "r928",
      "r977",
      "r978"
     ]
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Adoption Date",
        "terseLabel": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r866"
     ]
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r837"
     ]
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r838"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]",
        "terseLabel": "Measure:"
       }
      }
     },
     "auth_ref": [
      "r837"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r868"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]",
        "terseLabel": "Insider Trading Policies and Procedures:"
       }
      }
     },
     "auth_ref": [
      "r799",
      "r869"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt",
        "terseLabel": "Notes, carrying value",
        "totalLabel": "Long-term Debt, Total",
        "verboseLabel": "Total convertible senior notes",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r169",
      "r359",
      "r370",
      "r762",
      "r763",
      "r976"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities, excluding impact of acquisitions:"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r837"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 20.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "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": [
      "r13"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r799",
      "r869"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r837"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r838"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 21.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Accrued Liabilities",
        "totalLabel": "Increase (Decrease) in Accrued Liabilities, Total",
        "verboseLabel": "Accrued expenses",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_FairValueMeasurementsRecurringMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementsRecurringMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "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": [
      "r501",
      "r508"
     ]
    },
    "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contingent consideration",
        "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability",
        "verboseLabel": "Payment of contingent consideration earnout",
        "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement."
       }
      }
     },
     "auth_ref": [
      "r472",
      "r887"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "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": [
      "r799",
      "r869"
     ]
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasicAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic [Abstract]",
        "terseLabel": "Denominator"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentCarryingAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Gross",
        "verboseLabel": "Principal amount",
        "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": [
      "r26",
      "r169",
      "r369"
     ]
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GeographicConcentrationRiskMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographic Concentration Risk [Member]",
        "terseLabel": "Geographic Concentration Risk",
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa)."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r735"
     ]
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfGoodwillTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Goodwill [Table Text Block]",
        "verboseLabel": "Changes in Carrying Value of Goodwill",
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule."
       }
      }
     },
     "auth_ref": [
      "r760",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917"
     ]
    },
    "us-gaap_GoodwillLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail"
     ],
     "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": [
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r760"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Vested",
        "terseLabel": "Aggregate intrinsic value of restricted stock units vested",
        "documentation": "Intrinsic value of vested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentTypeAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Type [Axis]",
        "documentation": "Information by type of investments."
       }
      }
     },
     "auth_ref": [
      "r635",
      "r637",
      "r638",
      "r640",
      "r643",
      "r706",
      "r708",
      "r710",
      "r713",
      "r714",
      "r719",
      "r720",
      "r722",
      "r723",
      "r724",
      "r725",
      "r726",
      "r787"
     ]
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfGoodwillTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Goodwill [Table]",
        "terseLabel": "Schedule of Goodwill [Table]",
        "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons."
       }
      }
     },
     "auth_ref": [
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r760"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResearchAndDevelopmentArrangementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ResearchAndDevelopmentArrangementMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development Arrangement [Member]",
        "terseLabel": "Research and Development Arrangement [Member]",
        "documentation": "Contractual obligation to provide funding of research and development costs over periods that initially exceed one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AwardDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardDateAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Date [Axis]",
        "documentation": "Information by date or year award under share-based payment arrangement is granted."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956"
     ]
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation",
        "terseLabel": "Tax withholding on vesting of restricted stock units",
        "negatedLabel": "Tax withholding on vesting of restricted stock units",
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r798"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets, Total",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets",
        "terseLabel": "Net asset acquired",
        "documentation": "Amount of assets acquired at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Common stock excluded from calculation of diluted earnings per share",
        "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": [
      "r252"
     ]
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Earnings per share:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentFaceAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Notes issued",
        "verboseLabel": "Principal amount",
        "documentation": "Face (par) amount of debt instrument at time of issuance."
       }
      }
     },
     "auth_ref": [
      "r105",
      "r107",
      "r352",
      "r528",
      "r762",
      "r763"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r831"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable",
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_AwardDateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardDateDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Date [Domain]",
        "documentation": "Date or year award under share-based payment arrangement is granted."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash and cash equivalents",
        "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": [
      "r87"
     ]
    },
    "us-gaap_InterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense",
        "totalLabel": "Interest Expense, Total",
        "negatedLabel": "Interest expense",
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r173",
      "r213",
      "r266",
      "r526",
      "r683",
      "r793",
      "r980"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period",
        "totalLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Total",
        "negatedLabel": "Forfeited/expired/cancelled",
        "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired."
       }
      }
     },
     "auth_ref": [
      "r937"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price",
        "terseLabel": "Forfeited/expired/cancelled",
        "documentation": "Weighted average price of options that were either forfeited or expired."
       }
      }
     },
     "auth_ref": [
      "r937"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "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": [
      "r87"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedBalanceSheetDetailTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Table Text Block]",
        "verboseLabel": "Property, Plant and Equipment",
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities, Total",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities",
        "terseLabel": "Net liabilities assumed",
        "documentation": "Amount of liabilities assumed at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Contingent Consideration, Liability, Current",
        "terseLabel": "Current contingent consideration",
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r92"
     ]
    },
    "us-gaap_PrincipalOwnerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PrincipalOwnerMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Principal Owner [Member]",
        "terseLabel": "Principal Owner",
        "documentation": "Owner of record or known beneficial owner of more than 10 percent of the voting interests of the entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets",
        "terseLabel": "Prepaid expenses and other current 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, acquired at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Contingent Consideration, Liability, Noncurrent",
        "terseLabel": "Noncurrent contingent consideration",
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled beyond one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r92"
     ]
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r870"
     ]
    },
    "us-gaap_InterestExpenseDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestExpenseDebt",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConvertibleSeniorNotesScheduleOfConvertiableNoteInterestExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense, Debt",
        "totalLabel": "Total",
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt."
       }
      }
     },
     "auth_ref": [
      "r137",
      "r365",
      "r372",
      "r764",
      "r765"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets",
        "terseLabel": "Other long-term assets",
        "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_FurnitureAndFixturesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FurnitureAndFixturesGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Furniture and Fixtures, Gross",
        "terseLabel": "Furniture, fixtures and office equipment",
        "documentation": "Amount before accumulated depreciation of equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases."
       }
      }
     },
     "auth_ref": [
      "r152"
     ]
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Table]",
        "terseLabel": "Property, Plant and Equipment [Table]",
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "rgen_CashAndCashEquivalentsAndMoneyMarketFundsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "CashAndCashEquivalentsAndMoneyMarketFundsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash equivalents and marketable securities",
        "label": "Cash And Cash Equivalents And Money Market Funds [Member]",
        "documentation": "Cash and cash equivalents And money market funds."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReasonForChangeInDateOfAnnualGoodwillImpairmentTest": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ReasonForChangeInDateOfAnnualGoodwillImpairmentTest",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reason for Change in Date of Annual Goodwill Impairment Test",
        "documentation": "The reason for any change to the date of the annual goodwill impairment test."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill, Total",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "terseLabel": "Business combination, intangible assets",
        "verboseLabel": "Customer relationships",
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable",
        "negatedLabel": "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": [
      "r87"
     ]
    },
    "us-gaap_NewDateOfAnnualGoodwillImpairmentTest": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NewDateOfAnnualGoodwillImpairmentTest",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "New Date of Annual Goodwill Impairment Test",
        "documentation": "The new date of the annual goodwill impairment test."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Category of Item Purchased [Axis]",
        "documentation": "Information by category of items purchased under a long-term purchase commitment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table]",
        "terseLabel": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]",
        "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements."
       }
      }
     },
     "auth_ref": [
      "r79"
     ]
    },
    "us-gaap_LongTermDebtTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt [Text Block]",
        "terseLabel": "Convertible Senior Notes",
        "documentation": "The entire disclosure for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r154"
     ]
    },
    "rgen_OptionsToPurchaseCommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "OptionsToPurchaseCommonStockMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Options to Purchase Common Stock",
        "label": "Options to Purchase Common Stock [Member]",
        "documentation": "Options to purchase common stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Options exercisable at September 30, 2023 | shares",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number",
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan."
       }
      }
     },
     "auth_ref": [
      "r420"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Options exercisable at September 30, 2023",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r420"
     ]
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956"
     ]
    },
    "us-gaap_MeasurementInputTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MeasurementInputTypeAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Input Type [Axis]",
        "documentation": "Information by type of measurement input used to determine value of asset and liability."
       }
      }
     },
     "auth_ref": [
      "r504"
     ]
    },
    "rgen_TrueUpCostsDecember2020Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "TrueUpCostsDecember2020Member",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "True up costs December 2020.",
        "label": "True up costs December 2020 [Member]",
        "terseLabel": "True Up Costs December 2020"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_LossOnDebtConversion": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "LossOnDebtConversion",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Loss on debt conversion.",
        "label": "Loss On Debt Conversion",
        "terseLabel": "Loss on conversion of debt included in other expenses"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_RestrictedStockAndPerformanceStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "RestrictedStockAndPerformanceStockUnitsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restricted stock units and performance stock units.",
        "label": "Restricted Stock And Performance Stock Units [Member]",
        "terseLabel": "Restricted Stock Units and Performance Stock Units"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryCurrentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryCurrentTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Current [Table]",
        "terseLabel": "Inventory, Current [Table]",
        "documentation": "Disclosure of information about inventory expected to be sold or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LeaseAndRentalExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LeaseAndRentalExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Leases, Rent Expense",
        "terseLabel": "Rental expense",
        "documentation": "Amount of rent expense incurred for leased assets, including but not limited to, furniture and equipment, that is not directly or indirectly associated with the manufacture, sale or creation of a product or product line."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory [Line Items]",
        "terseLabel": "Inventory [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": []
    },
    "rgen_DilutiveSharesEffectOnBasicEarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DilutiveSharesEffectOnBasicEarningsPerShareAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "DilutivesharesAbstract",
        "label": "Dilutive shares, Effect on Basic Earnings Per Share [Abstract]",
        "terseLabel": "Effect of dilutive shares"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vested and expected to vest at September 30, 2023",
        "documentation": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail",
      "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": [
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets",
        "totalLabel": "Total assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r166",
      "r194",
      "r221",
      "r263",
      "r271",
      "r276",
      "r292",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r473",
      "r475",
      "r512",
      "r579",
      "r666",
      "r782",
      "r794",
      "r923",
      "r924",
      "r964"
     ]
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Liability",
        "terseLabel": "The beginning deferred revenue balance",
        "totalLabel": "Contract with Customer, Liability, Total",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r388",
      "r389",
      "r401"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "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": [
      "r412",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440"
     ]
    },
    "rgen_DebtInstrumentConvertibleIntoEquityNotYetConverted": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtInstrumentConvertibleIntoEquityNotYetConverted",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instrument convertible into equity not yet converted.",
        "label": "Debt Instrument Convertible Into Equity Not Yet Converted",
        "terseLabel": "Debt instrument convertible into equity not yet converted"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LeaseholdImprovementsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LeaseholdImprovementsGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leasehold Improvements, Gross",
        "terseLabel": "Leasehold improvements",
        "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement."
       }
      }
     },
     "auth_ref": [
      "r152"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Amount eligible for grant",
        "terseLabel": "Eligible for grant",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested in Period, Fair Value",
        "documentation": "Fair value of options vested. Excludes equity instruments other than options, for example, but not limited to, share units, stock appreciation rights, restricted stock."
       }
      }
     },
     "auth_ref": [
      "r433"
     ]
    },
    "us-gaap_AccountingStandardsUpdate202006Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountingStandardsUpdate202006Member",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update 2020-06 [Member]",
        "terseLabel": "AccountingStandardsUpdate202006Member",
        "documentation": "Accounting Standards Update 2020-06 Debt - Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity's Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity's Own Equity."
       }
      }
     },
     "auth_ref": [
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499"
     ]
    },
    "rgen_TrademarkMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "TrademarkMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Right acquired through registration of a trademark to gain or protect exclusive use of business name, symbol or other device or style.",
        "label": "Trademark [Member]",
        "terseLabel": "Trademark"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "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": [
      "r412",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440"
     ]
    },
    "us-gaap_LongTermDebtFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtFairValue",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Fair Value",
        "terseLabel": "Fair value of convertible senior notes",
        "verboseLabel": "Fair value of the note",
        "documentation": "The fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same submission."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956"
     ]
    },
    "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]",
        "terseLabel": "Percentage by Geographic Area or Significant Customers",
        "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r53",
      "r56",
      "r57",
      "r102",
      "r165"
     ]
    },
    "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationAndAssetAcquisitionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination and Asset Acquisition [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [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": []
    },
    "rgen_CommitmentsAndContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "CommitmentsAndContingenciesTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commitments and Contingencies [Table]",
        "label": "Commitments and Contingencies [Table]",
        "terseLabel": "Commitments and Contingencies [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_FacilityExitAndOtherExitCostsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "FacilityExitAndOtherExitCostsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Facility exit and other exit costs",
        "label": "Facility Exit and Other Exit Costs [Member]",
        "documentation": "Facility exit and other exit costs."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_MonteCarloSimulationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "MonteCarloSimulationMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Monte Carlo Simulation.",
        "label": "Monte Carlo Simulation [Member]",
        "terseLabel": "Monte Carlo Simulation"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail",
      "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": [
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440"
     ]
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid in Capital, Common Stock",
        "periodEndLabel": "Additional Paid in Capital, Common Stock, Ending Balance",
        "periodStartLabel": "Additional Paid in Capital, Common Stock, Beginning Balance",
        "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": [
      "r119"
     ]
    },
    "us-gaap_VestingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "VestingAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting [Axis]",
        "terseLabel": "Vesting [Axis]",
        "documentation": "Information by vesting schedule of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ResearchAndDevelopmentExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development Expense",
        "terseLabel": "Research and development",
        "totalLabel": "Research and Development Expense, Total",
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use."
       }
      }
     },
     "auth_ref": [
      "r110",
      "r445",
      "r972"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Axis]",
        "documentation": "Information by type of cash and cash equivalent balance."
       }
      }
     },
     "auth_ref": [
      "r188"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maturity of one year or less, Amortized Costs",
        "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One",
        "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r903"
     ]
    },
    "us-gaap_VestingDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "VestingDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting [Domain]",
        "terseLabel": "Vesting [Domain]",
        "documentation": "Vesting schedule of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maturity of one year or less, Estimated Fair Value",
        "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One",
        "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r291",
      "r577"
     ]
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]",
        "documentation": "Information by location in the income statement."
       }
      }
     },
     "auth_ref": [
      "r322",
      "r328",
      "r682"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Effect of Exchange Rate on Cash and Cash Equivalents, Total",
        "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 and cash equivalents",
        "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": [
      "r961"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]",
        "documentation": "Location in the income statement."
       }
      }
     },
     "auth_ref": [
      "r328",
      "r682"
     ]
    },
    "us-gaap_SubsequentEventMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event",
        "label": "Subsequent Event [Member]",
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r523",
      "r548"
     ]
    },
    "us-gaap_RestructuringAndRelatedActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringAndRelatedActivitiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring and Related Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PayablesAndAccrualsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BuildingsAndImprovementsGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Buildings and Improvements, Gross",
        "terseLabel": "Buildings",
        "totalLabel": "Buildings and Improvements, Gross, Total",
        "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing."
       }
      }
     },
     "auth_ref": [
      "r152"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]",
        "terseLabel": "Summary of Option Activity",
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r23",
      "r77"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vested and expected to vest at September 30, 2023",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Exercise Price",
        "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r435"
     ]
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "terseLabel": "Recent Accounting Standards Updates",
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DevelopedTechnologyRightsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionsofFlexbiosysIncEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Developed Technology Rights [Member]",
        "terseLabel": "Technology - developed",
        "verboseLabel": "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": [
      "r163"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, shares issued",
        "totalLabel": "Common Stock, Shares, Issued, Total",
        "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": [
      "r118"
     ]
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RevenueRecognitionTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "terseLabel": "Summary of Receivables and Deferred Revenue from Contracts with Customers",
        "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": [
      "r927"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Current",
        "verboseLabel": "Operating lease liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r534"
     ]
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactions"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions Disclosure [Text Block]",
        "terseLabel": "Related Party Transactions",
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r542",
      "r543",
      "r545",
      "r546",
      "r620",
      "r621",
      "r622",
      "r680",
      "r681",
      "r682",
      "r702",
      "r704"
     ]
    },
    "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MinorityInterestOwnershipPercentageByNoncontrollingOwners",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsidiary, Ownership Percentage, Noncontrolling Owner",
        "terseLabel": "Non controlling ownership interest minimum",
        "documentation": "The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProductMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProductMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRevenueRecognitionSummaryOfDisaggregationOfRevenueDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Product Revenue",
        "label": "Product [Member]",
        "terseLabel": "Products",
        "documentation": "Article or substance produced by nature, labor or machinery."
       }
      }
     },
     "auth_ref": [
      "r767"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Common stock, $0.01 par value; 80,000,000 shares authorized; 55,774,706 shares at September 30, 2023 and 55,557,698 shares at December 31, 2022 issued and outstanding",
        "label": "Common Stock, Value, Issued",
        "periodEndLabel": "Common Stock, Value, Issued, Ending Balance",
        "periodStartLabel": "Common Stock, Value, Issued, Beginning Balance",
        "totalLabel": "Common Stock, Value, Issued, Total",
        "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": [
      "r118",
      "r582",
      "r782"
     ]
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transaction [Line Items]",
        "terseLabel": "Related Party Transaction [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": [
      "r678",
      "r679",
      "r682"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, shares authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r118",
      "r654"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vested and expected to vest at September 30, 2023",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r434"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vested and expected to vest at September 30, 2023 (1) | shares",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number",
        "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r434"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Outstanding",
        "periodEndLabel": "Common Stock, Shares, Outstanding, Ending Balance",
        "periodStartLabel": "Common Stock, Shares, Outstanding, Beginning Balance",
        "terseLabel": "Common stock, shares outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r118",
      "r654",
      "r672",
      "r983",
      "r984"
     ]
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Settlements",
        "terseLabel": "Acquisition date fair value of contingent consideration earnout",
        "documentation": "Amount of settlements of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r98"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 23.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Other Noncurrent Liabilities",
        "terseLabel": "Long-term liabilities",
        "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharesOutstanding",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares, Outstanding",
        "periodEndLabel": "Ending Balance (in shares)",
        "periodStartLabel": "Beginning Balance (in shares)",
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Noncurrent",
        "verboseLabel": "Noncurrent operating lease liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r534"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Inventories",
        "totalLabel": "Increase (Decrease) in Inventories, Total",
        "negatedLabel": "Inventories",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesConversionOfUnits",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Shares, Conversion of Units",
        "verboseLabel": "Issuance of common stock for debt conversion (in shares)",
        "documentation": "The number of shares issued during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r73",
      "r117",
      "r118",
      "r158"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]",
        "terseLabel": "Summary of Restricted Stock Unit Activity",
        "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year."
       }
      }
     },
     "auth_ref": [
      "r77"
     ]
    },
    "us-gaap_OtherIntangibleAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherIntangibleAssetsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Intangible Assets [Member]",
        "terseLabel": "Other intangibles",
        "documentation": "Intangible assets classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_HeldToMaturitySecuritiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "HeldToMaturitySecuritiesCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Marketable securities held to maturity",
        "label": "Debt Securities, Held-to-Maturity, Amortized Cost, before Allowance for Credit Loss, Current",
        "documentation": "Amount, before allowance for credit loss, of investment in debt security measured at amortized cost (held-to-maturity), classified as current."
       }
      }
     },
     "auth_ref": [
      "r290",
      "r904",
      "r906"
     ]
    },
    "us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Equity Interest Issued or Issuable, Number of Shares",
        "terseLabel": "Shares issued for business acquisition",
        "verboseLabel": "Shares of common stock issued for acquisition",
        "documentation": "Number of shares of equity interests issued or issuable to acquire entity."
       }
      }
     },
     "auth_ref": [
      "r164"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfUnits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueConversionOfUnits",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Value, Conversion of Units",
        "verboseLabel": "Issuance of common stock for debt conversion",
        "documentation": "Value of stock issued during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r37",
      "r158"
     ]
    },
    "us-gaap_DilutiveSecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DilutiveSecuritiesAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effect of dilutive securities",
        "label": "Dilutive Securities, Effect on Basic Earnings Per Share [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TypeOfAdoptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TypeOfAdoptionMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Domain]",
        "terseLabel": "Type of Adoption [Domain]",
        "documentation": "Amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r227",
      "r228",
      "r229",
      "r230",
      "r239",
      "r288",
      "r289",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r323",
      "r442",
      "r443",
      "r444",
      "r454",
      "r455",
      "r456",
      "r457",
      "r467",
      "r468",
      "r469",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r509",
      "r510",
      "r513",
      "r514",
      "r515",
      "r516",
      "r524",
      "r525",
      "r529",
      "r530",
      "r531",
      "r532",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r557",
      "r558",
      "r559",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611"
     ]
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Purchase Commitment, Category of Item Purchased [Domain]",
        "documentation": "General description of the goods or services to be purchased from the counterparty to the long-term purchase commitment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "terseLabel": "Goodwill",
        "totalLabel": "Goodwill, Total",
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r191",
      "r304",
      "r573",
      "r760",
      "r782",
      "r908",
      "r915"
     ]
    },
    "us-gaap_LongTermPurchaseCommitmentAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermPurchaseCommitmentAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Purchase Commitment, Amount",
        "verboseLabel": "Payments to Navigo in connection with this program, which are recorded to research and development expenses",
        "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment."
       }
      }
     },
     "auth_ref": []
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "auth_ref": [
      "r282",
      "r283",
      "r636",
      "r639",
      "r641",
      "r708",
      "r710",
      "r714",
      "r722",
      "r733",
      "r737",
      "r738",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r749",
      "r768",
      "r787",
      "r928",
      "r977"
     ]
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Proceeds from Sale and Maturity of Held-to-Maturity Securities, Total",
        "label": "Proceeds from Sale and Maturity of Held-to-Maturity Securities",
        "terseLabel": "Proceeds from maturity of marketable securities held to maturity",
        "documentation": "Amount of cash inflow from the sale or maturity of long-term held-to-maturity securities."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r900"
     ]
    },
    "us-gaap_CashAndCashEquivalentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents",
        "label": "Cash and Cash Equivalents [Member]",
        "documentation": "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-Lived Intangible Assets (Excluding Goodwill)",
        "periodEndLabel": "Indefinite-lived Intangible Assets (Excluding Goodwill), Ending Balance",
        "periodStartLabel": "Indefinite-lived Intangible Assets (Excluding Goodwill), Beginning Balance",
        "totalLabel": "Indefinite-lived Intangible Assets (Excluding Goodwill), Total",
        "verboseLabel": "Gross Carrying Value",
        "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit."
       }
      }
     },
     "auth_ref": [
      "r151"
     ]
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]",
        "terseLabel": "Schedule of Reconciliation of the Change in the Fair Value of Contingent Consideration - Earnout",
        "documentation": "Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r99"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "auth_ref": [
      "r282",
      "r283",
      "r636",
      "r639",
      "r641",
      "r708",
      "r710",
      "r714",
      "r722",
      "r737",
      "r738",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r749",
      "r768",
      "r787",
      "r928",
      "r977"
     ]
    },
    "rgen_WeightedAverageDiscountRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "WeightedAverageDiscountRate",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate.",
        "label": "Weighted Average Discount Rate",
        "terseLabel": "Weighted average discount rate"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingLeaseLiability",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 22.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Lease Liability",
        "terseLabel": "Operating lease Liabilities",
        "documentation": "Amount of increase (decrease) in obligation for operating lease."
       }
      }
     },
     "auth_ref": [
      "r875",
      "r887"
     ]
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Employee compensation",
        "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": [
      "r30"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Issuance of Common Stock",
        "terseLabel": "Proceeds from issuance of common stock, net",
        "documentation": "The cash inflow from the additional capital contribution to the entity."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Liabilities, Noncurrent",
        "terseLabel": "Other noncurrent liabilities",
        "totalLabel": "Other Liabilities, Noncurrent, Total",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r34"
     ]
    },
    "dei_LegalEntityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LegalEntityAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfInventoriesDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsAmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquityStockbasedCompensationExpenseDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity [Axis]",
        "terseLabel": "Legal Entity [Axis]",
        "documentation": "The set of legal entities associated with a report."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentOther",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Other, Gross",
        "verboseLabel": "Other",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of other physical assets used in the normal conduct of business to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "rgen_UnvestedOptionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "UnvestedOptionsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unvested Options [Member]",
        "label": "Unvested Options [Member]",
        "terseLabel": "Unvested Options"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RepaymentsOfConvertibleDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RepaymentsOfConvertibleDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repayment of Convertible Senior Notes",
        "label": "Repayments of Convertible Debt",
        "terseLabel": "Repayment of convertible debt",
        "verboseLabel": "Repayment of convertible debt",
        "documentation": "The cash outflow from the repayment of a long-term debt instrument which can be exchanged for a specified amount of another security, typically the entity's common stock, at the option of the issuer or the holder."
       }
      }
     },
     "auth_ref": [
      "r45"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type [Domain]",
        "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": [
      "r53",
      "r56",
      "r102",
      "r103",
      "r284",
      "r735"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Options exercisable at September, 2023",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value",
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable."
       }
      }
     },
     "auth_ref": [
      "r76"
     ]
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Basic",
        "totalLabel": "Earnings Per Share, Basic, Total",
        "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": [
      "r215",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r241",
      "r243",
      "r249",
      "r250",
      "r251",
      "r255",
      "r498",
      "r499",
      "r575",
      "r591",
      "r756"
     ]
    },
    "us-gaap_AccountsReceivableMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsReceivableMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts Receivable [Member]",
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold."
       }
      }
     },
     "auth_ref": [
      "r735"
     ]
    },
    "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsClassifiedByContractualMaturityDateTableTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Amortized Cost and Fair Value Held to Maturity Securities by Contractual Maturity",
        "label": "Investments Classified by Contractual Maturity Date [Table Text Block]",
        "documentation": "Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r56",
      "r102",
      "r103",
      "r284",
      "r735"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r56",
      "r102",
      "r103",
      "r284",
      "r612",
      "r735"
     ]
    },
    "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payment for Contingent Consideration Liability, Financing Activities",
        "negatedLabel": "Payment of earnout consideration",
        "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Axis]",
        "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]",
        "documentation": "Information by amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r227",
      "r228",
      "r229",
      "r230",
      "r239",
      "r288",
      "r289",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r323",
      "r442",
      "r443",
      "r444",
      "r454",
      "r455",
      "r456",
      "r457",
      "r467",
      "r468",
      "r469",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r509",
      "r510",
      "r513",
      "r514",
      "r515",
      "r516",
      "r524",
      "r525",
      "r529",
      "r530",
      "r531",
      "r532",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r557",
      "r558",
      "r559",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureSegmentReportingPercentageOfRevenueByGeographicAreaDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Accounts receivable, percentage by customer",
        "verboseLabel": "Revenues, percentage by country",
        "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": [
      "r53",
      "r56",
      "r102",
      "r103",
      "r284"
     ]
    },
    "us-gaap_SharePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharePrice",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Price",
        "terseLabel": "Closing price of common stock",
        "documentation": "Price of a single share of a number of saleable stocks of a company."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "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": [
      "r79"
     ]
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireIntangibleAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchase of intellectual property",
        "terseLabel": "Purchase of intellectual property",
        "label": "Payments to Acquire Intangible Assets",
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "us-gaap_ConstructionInProgressGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConstructionInProgressGross",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailPropertyPlantAndEquipmentDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Construction in Progress, Gross",
        "terseLabel": "Construction in progress",
        "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service."
       }
      }
     },
     "auth_ref": [
      "r152"
     ]
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax",
        "totalLabel": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Total",
        "verboseLabel": "Foreign currency translation adjustment",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Restructuring Activities by Type of Cost",
        "label": "Schedule of Restructuring Reserve by Type of Cost [Table Text Block]",
        "documentation": "Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r72"
     ]
    },
    "rgen_InflationReductionActOfTwoThousandTwentyTwoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "InflationReductionActOfTwoThousandTwentyTwoMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inflation reduction act of two thousand twenty two member.",
        "label": "Inflation Reduction Act Of Two Thousand Twenty Two [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_NoncashInterestIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "NoncashInterestIncome",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Non-cash interest income",
        "documentation": "Noncash interest income.",
        "label": "Noncash Interest Income"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_USTreasuryBillSecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "USTreasuryBillSecuritiesMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "U.S. treasury bills",
        "label": "US Treasury Bill Securities [Member]",
        "documentation": "This category includes information about negotiable debt securities issued by the United States Department of the Treasury which generally have maturities of one year or less, are interest bearing, and are backed by the full faith and credit of the United States government."
       }
      }
     },
     "auth_ref": [
      "r973"
     ]
    },
    "us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ImpairmentOfIntangibleAssetsExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Impairment of Intangible Assets (Excluding Goodwill)",
        "terseLabel": "Impairment of intangible assets",
        "totalLabel": "Impairment of Intangible Assets (Excluding Goodwill), Total",
        "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to fair value."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r25"
     ]
    },
    "srt_ChiefFinancialOfficerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ChiefFinancialOfficerMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Chief Financial Officer",
        "label": "Chief Financial Officer [Member]"
       }
      }
     },
     "auth_ref": [
      "r899"
     ]
    },
    "rgen_AmortizationOfDebtIssuanceCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AmortizationOfDebtIssuanceCost",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amortization of debt issuance cost.",
        "label": "Amortization Of Debt Issuance Cost",
        "negatedLabel": "Amortization of debt issuance costs"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_InventoryWriteOffMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "InventoryWriteOffMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory Write-Off",
        "label": "Inventory Write-Off [Member]",
        "documentation": "Inventory write-off."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities",
        "label": "Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities",
        "negatedLabel": "Accrued liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ExecutiveOfficerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ExecutiveOfficerMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Officer [Member]",
        "terseLabel": "Awards Granted to Executive Level Employees"
       }
      }
     },
     "auth_ref": [
      "r899"
     ]
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueInputsLevel1Member",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "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": [
      "r360",
      "r404",
      "r409",
      "r503",
      "r550",
      "r774",
      "r775",
      "r776"
     ]
    },
    "us-gaap_PaymentsToAcquireSoftware": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireSoftware",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Software",
        "negatedLabel": "Additions to capitalized software costs",
        "documentation": "The cash outflow associated with the acquisition from vendors of software programs or applications for internal use (that is, not to be sold, leased or otherwise marketed to others) that qualify for capitalization."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_PercentageOfCurrentFederalTaxExpenseBenefit": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "PercentageOfCurrentFederalTaxExpenseBenefit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage Of Current Federal Tax Expense Benefit",
        "label": "Percentage Of Current Federal Tax Expense Benefit",
        "terseLabel": "Percentage of alternative minimum tax"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_NoncashinventorywriteOff": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "NoncashinventorywriteOff",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-cash inventory write-off",
        "label": "NoncashInventoryWrite-off",
        "documentation": "NoncashInventoryWrite-off."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SaleOfStockNameOfTransactionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SaleOfStockNameOfTransactionDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sale of Stock [Domain]",
        "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_VolatilityRateOfContingentConsideration": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "VolatilityRateOfContingentConsideration",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Volatility rate of contingent consideration.",
        "label": "Volatility rate of Contingent Consideration",
        "terseLabel": "Volatility"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueInputsLevel3Member",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "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": [
      "r360",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r503",
      "r552",
      "r762",
      "r763",
      "r774",
      "r775",
      "r776"
     ]
    },
    "rgen_SummaryOfSignificantAccountingPoliciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "SummaryOfSignificantAccountingPoliciesLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary Of Significant Accounting Policies [Line Items]",
        "label": "Summary Of Significant Accounting Policies [Line Items]",
        "terseLabel": "Summary Of Significant Accounting Policies [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ValuationTechniqueDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ValuationTechniqueDomain",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Valuation Approach and Technique [Domain]",
        "documentation": "Valuation approach and technique."
       }
      }
     },
     "auth_ref": [
      "r20"
     ]
    },
    "rgen_ScheduleOfAccruedLiabilitiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfAccruedLiabilitiesLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Accrued Liabilities [Line Items]",
        "label": "Schedule of Accrued Liabilities [Line Items]",
        "terseLabel": "Schedule of Accrued Liabilities [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_DebtSecuritiesMaturityWithinOneYearAmortizedCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtSecuritiesMaturityWithinOneYearAmortizedCost",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfAmortizedCostAndFairValueHeldToMaturitySecuritiesByContractualMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt securities maturity within one year amortized cost.",
        "label": "Debt Securities Maturity Within One Year Amortized Cost"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_AcceleratedDepreciationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AcceleratedDepreciationMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfActivityRelatedToRestructuringPlanDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureRestructuringPlanSummaryOfRestructuringActivitiesByTypeOfCostDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accelerated depreciation",
        "label": "Accelerated Depreciation [Member]",
        "documentation": "Accelerated depreciation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementClassOfStockAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementClassOfStockAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Stock [Axis]",
        "documentation": "Information by the different classes of stock of the entity."
       }
      }
     },
     "auth_ref": [
      "r179",
      "r195",
      "r196",
      "r197",
      "r221",
      "r243",
      "r244",
      "r249",
      "r251",
      "r257",
      "r258",
      "r292",
      "r343",
      "r345",
      "r346",
      "r347",
      "r350",
      "r351",
      "r374",
      "r375",
      "r377",
      "r380",
      "r386",
      "r512",
      "r614",
      "r615",
      "r616",
      "r617",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r654",
      "r675",
      "r698",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r871",
      "r889",
      "r896"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureStockholdersEquitySummaryOfRestrictedStockUnitActivityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average, Vested and expected to vest at September 30, 2023",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Grant Date Fair Value",
        "documentation": "Share based compensation arrangement by share based payment award equity instruments other than options vested and expected to vest outstanding weighted average grant date fair value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ValuationTechniqueAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ValuationTechniqueAxis",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Valuation Approach and Technique [Axis]",
        "documentation": "Information by valuation approach and technique."
       }
      }
     },
     "auth_ref": [
      "r20"
     ]
    },
    "rgen_ScheduleOfAccruedLiabilitiesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfAccruedLiabilitiesTable",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureConsolidatedBalanceSheetDetailScheduleOfAccruedLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Accrued Liabilities [Table]",
        "label": "Schedule of Accrued Liabilities [Table]",
        "terseLabel": "Schedule of Accrued Liabilities [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncFairValueOfNetAssetsAcquiredDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset.",
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset",
        "verboseLabel": "Operating lease right of use asset"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_PfizerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "PfizerMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Pfizer member.",
        "label": "Pfizer [Member]",
        "terseLabel": "Pfizer"
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Assets, Net",
        "totalLabel": "Deferred Income Tax Assets, Net, Total",
        "verboseLabel": "Deferred tax assets",
        "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": [
      "r447",
      "r448"
     ]
    },
    "rgen_PerformanceBasedRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "PerformanceBasedRestrictedStockUnitsMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/SubsequentEventAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance Based Restricted Stock Units",
        "label": "Performance Based Restricted Stock Units[ Member]",
        "documentation": "Performance based restricted stock units."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_AvitideLlcMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AvitideLlcMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Avitide LLC.",
        "label": "Avitide LLC [Member]",
        "terseLabel": "Avitide LLC"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_ShortTermContingentConsideration": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ShortTermContingentConsideration",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfFinancialAssetsAndFinancialLiabilitiesMeasuredAtFairValueOnARecurringBasisDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Short-term contingent consideration.",
        "label": "Short Term Contingent Consideration",
        "terseLabel": "Short-term contingent consideration"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and contingencies (Note 10)",
        "label": "Commitments and Contingencies",
        "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": [
      "r35",
      "r108",
      "r580",
      "r653"
     ]
    },
    "rgen_ScheduleOfConvertiableNoteInterestExpense": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ScheduleOfConvertiableNoteInterestExpense",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of convertiable note interest expense",
        "label": "Schedule of convertiable note interest expense"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForRent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForRent",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments for Rent",
        "terseLabel": "Rental expense",
        "documentation": "Cash payments to lessor's for use of assets under operating leases."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "rgen_WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "WeightedAverageNumberOfSharesDilutiveEffectOfUnvestedPerformanceStockUnits",
     "calculation": {
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "parentTag": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureEarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average number of shares dilutive effect of unvested performance stock units.",
        "label": "Weighted Average Number of Shares Dilutive Effect of Unvested Performance Stock Units",
        "terseLabel": "Dilutive effect of unvested performance stock units"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_AvitideIncMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "AvitideIncMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlowsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Avitide, Inc. [Member]",
        "label": "Avitide, Inc. [Member]",
        "terseLabel": "Avitide, Inc."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowElementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SupplementalCashFlowElementsAbstract",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Elements [Abstract]",
        "verboseLabel": "Supplemental disclosure of non-cash investing and financing activities:"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_IndefiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "IndefiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureGoodwillAndIntangibleAssetsScheduleOfIntangibleAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indefinite Lived Intangible Assets Net",
        "label": "Indefinite Lived Intangible Assets Net",
        "verboseLabel": "Net Carrying Value"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_CommitmentsAndContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "CommitmentsAndContingenciesLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commitments and Contingencies [Line Items]",
        "label": "Commitments and Contingencies [Line Items]",
        "terseLabel": "Commitments and Contingencies [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "rgen_DebtSecuritiesHeldToMaturityGrossUnrealizedGain": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtSecuritiesHeldToMaturityGrossUnrealizedGain",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt securities held to maturity gross unrealized gain.",
        "label": "Debt Securities Held to Maturity Gross Unrealized Gain",
        "terseLabel": "Marketable securities, Gross Unrealized Gains"
       }
      }
     },
     "auth_ref": []
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r795"
     ]
    },
    "rgen_OptionToPurchaseAdditionalDebtFaceAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "OptionToPurchaseAdditionalDebtFaceAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Option to purchase additional debt face amount.",
        "label": "Option to Purchase Additional Debt Face Amount",
        "verboseLabel": "Additional Notes issued"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "totalLabel": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition, Total",
        "verboseLabel": "Stock-based compensation expense",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r81",
      "r413"
     ]
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "rgen_DebtSecuritiesHeldToMaturityEstimatedFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "DebtSecuritiesHeldToMaturityEstimatedFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsSummaryOfCompanysCashCashEquivalentsAndMarketableSecuritiesHeldToMaturityDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt securities held to maturity estimated fair value.",
        "label": "Debt Securities Held to Maturity Estimated Fair Value",
        "terseLabel": "Marketable securities, Estimated Fair Value"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationIndemnificationAssetsRangeOfOutcomesValueHigh",
     "crdr": "credit",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureAcquisitionOfFlexbiosysIncAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Indemnification Assets, Range of Outcomes, Value, High",
        "documentation": "For indemnification assets recognized in connection with a business combination, this element represents an estimate of the high-end of the potential range (undiscounted) of the indemnification benefit which may be realized."
       }
      }
     },
     "auth_ref": [
      "r86"
     ]
    },
    "rgen_IncomeTaxesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "IncomeTaxesLineItems",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Taxes [Line Items]",
        "label": "Income Taxes [Line Items]",
        "terseLabel": "Income Taxes [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NumberOfOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NumberOfOperatingSegments",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/SegmentReportingAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r898"
     ]
    },
    "rgen_ContingentConsiderationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.repligencorp.com/20230930",
     "localname": "ContingentConsiderationMember",
     "presentation": [
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfContingentConsiderationEarnoutExpectToBeRequiredToSettleIncludeSignificantUnobservableInputsDetail",
      "http://www.repligencorp.com/20230930/taxonomy/role/DisclosureFairValueMeasurementsScheduleOfReconciliationOfTheChangeInTheFairValueOfContingentConsiderationEarnoutDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contingent consideration.",
        "label": "Contingent Consideration [Member]",
        "terseLabel": "Contingent Consideration"
       }
      }
     },
     "auth_ref": []
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "940",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1"
  },
  "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": "35",
   "Paragraph": "1",
   "Subparagraph": "b",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1"
  },
  "r7": {
   "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/2147481877/830-230-45-1"
  },
  "r8": {
   "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"
  },
  "r9": {
   "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"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(f)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(g)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r13": {
   "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"
  },
  "r14": {
   "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"
  },
  "r15": {
   "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"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15"
  },
  "r17": {
   "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"
  },
  "r18": {
   "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"
  },
  "r19": {
   "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"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)",
   "SubTopic": "10",
   "Topic": "820",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "820",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "SubTopic": "30",
   "Topic": "350",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-3"
  },
  "r26": {
   "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"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.21)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "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"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.24)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.25)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r38": {
   "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"
  },
  "r39": {
   "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"
  },
  "r40": {
   "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"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r42": {
   "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"
  },
  "r43": {
   "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"
  },
  "r44": {
   "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"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r46": {
   "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"
  },
  "r47": {
   "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"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-13"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16"
  },
  "r53": {
   "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"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r56": {
   "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"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2"
  },
  "r60": {
   "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"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "((a)(1),(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r66": {
   "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"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "420",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "420",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "420",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 5.P.3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-1"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "420",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB TOPIC 5.P.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "420",
   "SubTopic": "10",
   "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"
  },
  "r73": {
   "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"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r79": {
   "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"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "25",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-23"
  },
  "r83": {
   "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"
  },
  "r84": {
   "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"
  },
  "r85": {
   "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"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1"
  },
  "r87": {
   "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"
  },
  "r88": {
   "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"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14"
  },
  "r90": {
   "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"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "30",
   "Section": "25",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-5"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "30",
   "Section": "25",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-6"
  },
  "r93": {
   "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"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B"
  },
  "r95": {
   "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"
  },
  "r96": {
   "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"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "820",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "820",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "820",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-11"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-12"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "210",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03.17)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r109": {
   "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/2147480848/942-470-50-3"
  },
  "r110": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "985",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1"
  },
  "r111": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 201.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r112": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 201.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r113": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 201.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r125": {
   "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(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r126": {
   "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(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r127": {
   "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"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r131": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r132": {
   "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),(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r133": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r134": {
   "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"
  },
  "r135": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.7(a),(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r136": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r137": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.8)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r138": {
   "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"
  },
  "r139": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r140": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r141": {
   "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"
  },
  "r142": {
   "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"
  },
  "r143": {
   "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"
  },
  "r144": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//235/tableOfContent"
  },
  "r145": {
   "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"
  },
  "r146": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2"
  },
  "r147": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "350",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//350/tableOfContent"
  },
  "r148": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r149": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r150": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r151": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r152": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r153": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//440/tableOfContent"
  },
  "r154": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//470/tableOfContent"
  },
  "r155": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//505/tableOfContent"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r160": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r161": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//805/tableOfContent"
  },
  "r162": {
   "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"
  },
  "r163": {
   "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"
  },
  "r164": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1"
  },
  "r165": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21"
  },
  "r166": {
   "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/2147479853/942-210-S99-1"
  },
  "r167": {
   "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/2147479853/942-210-S99-1"
  },
  "r168": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r169": {
   "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/2147479853/942-210-S99-1"
  },
  "r170": {
   "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/2147479853/942-210-S99-1"
  },
  "r171": {
   "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/2147483589/942-220-S99-1"
  },
  "r172": {
   "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/2147483589/942-220-S99-1"
  },
  "r173": {
   "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.9)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//606/tableOfContent"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(a)",
   "Publisher": "SEC"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r182": {
   "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"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "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(1))",
   "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(13))",
   "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(14))",
   "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(15))",
   "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(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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(27)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r196": {
   "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(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r197": {
   "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(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r201": {
   "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"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(210.5-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "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"
  },
  "r236": {
   "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"
  },
  "r237": {
   "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"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//260/tableOfContent"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "40",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "40",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-42"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//280/tableOfContent"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9"
  },
  "r287": {
   "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"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-2"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "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"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r296": {
   "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"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r322": {
   "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"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147477123/405-50-65-1"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//420/tableOfContent"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.P.3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-1"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r370": {
   "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"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-6"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-6"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-4"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "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"
  },
  "r406": {
   "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"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "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"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(n)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "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"
  },
  "r425": {
   "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"
  },
  "r426": {
   "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"
  },
  "r427": {
   "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"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "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"
  },
  "r437": {
   "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"
  },
  "r438": {
   "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"
  },
  "r439": {
   "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"
  },
  "r440": {
   "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"
  },
  "r441": {
   "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"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482916/730-10-50-1"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//740/tableOfContent"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "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"
  },
  "r460": {
   "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.Fact.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r461": {
   "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.Fact.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r462": {
   "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"
  },
  "r463": {
   "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/2147482526/740-270-50-1"
  },
  "r464": {
   "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"
  },
  "r465": {
   "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"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3"
  },
  "r470": {
   "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"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-4"
  },
  "r473": {
   "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"
  },
  "r474": {
   "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"
  },
  "r475": {
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r480": {
   "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"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r487": {
   "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"
  },
  "r488": {
   "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"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r505": {
   "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"
  },
  "r506": {
   "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"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482477/820-10-65-13"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482477/820-10-65-13"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482736/825-10-45-5A"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "832",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "832",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3"
  },
  "r528": {
   "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"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r540": {
   "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"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//850/tableOfContent"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//855/tableOfContent"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "r552": {
   "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"
  },
  "r553": {
   "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "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"
  },
  "r556": {
   "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"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r560": {
   "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/2147483147/928-340-50-1"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "33",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "33",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "35A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "35A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8"
  },
  "r573": {
   "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/2147479853/942-210-S99-1"
  },
  "r574": {
   "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/2147483589/942-220-S99-1"
  },
  "r575": {
   "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/2147483589/942-220-S99-1"
  },
  "r576": {
   "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/2147479557/942-235-S99-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-3A"
  },
  "r578": {
   "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/2147480842/942-360-50-1"
  },
  "r579": {
   "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/2147479440/944-210-S99-1"
  },
  "r580": {
   "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/2147479440/944-210-S99-1"
  },
  "r581": {
   "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/2147479440/944-210-S99-1"
  },
  "r582": {
   "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/2147479440/944-210-S99-1"
  },
  "r583": {
   "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/2147479440/944-210-S99-1"
  },
  "r584": {
   "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/2147479440/944-210-S99-1"
  },
  "r585": {
   "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/2147479440/944-210-S99-1"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r587": {
   "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/2147479440/944-210-S99-1"
  },
  "r588": {
   "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/2147483586/944-220-S99-1"
  },
  "r589": {
   "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/2147483586/944-220-S99-1"
  },
  "r590": {
   "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/2147483586/944-220-S99-1"
  },
  "r591": {
   "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/2147483586/944-220-S99-1"
  },
  "r592": {
   "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/2147483586/944-220-S99-1"
  },
  "r593": {
   "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/2147480149/944-235-S99-2"
  },
  "r594": {
   "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/2147480149/944-235-S99-2"
  },
  "r595": {
   "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/2147480149/944-235-S99-2"
  },
  "r596": {
   "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/2147480149/944-235-S99-2"
  },
  "r597": {
   "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/2147480149/944-235-S99-2"
  },
  "r598": {
   "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/2147480149/944-235-S99-2"
  },
  "r599": {
   "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"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r602": {
   "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"
  },
  "r603": {
   "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"
  },
  "r604": {
   "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"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r606": {
   "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"
  },
  "r607": {
   "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"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r611": {
   "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"
  },
  "r612": {
   "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/2147479383/944-825-50-1B"
  },
  "r613": {
   "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"
  },
  "r614": {
   "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)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r615": {
   "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)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r616": {
   "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)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r617": {
   "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"
  },
  "r618": {
   "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"
  },
  "r619": {
   "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"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6"
  },
  "r623": {
   "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/2147480767/946-205-45-4"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "27",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r634": {
   "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/2147480555/946-210-45-4"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r642": {
   "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/2147480524/946-210-50-6"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r644": {
   "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/2147480524/946-210-50-6"
  },
  "r645": {
   "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/2147480524/946-210-50-6"
  },
  "r646": {
   "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/2147479617/946-210-S99-1"
  },
  "r647": {
   "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/2147479617/946-210-S99-1"
  },
  "r648": {
   "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/2147479617/946-210-S99-1"
  },
  "r649": {
   "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/2147479617/946-210-S99-1"
  },
  "r650": {
   "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/2147479617/946-210-S99-1"
  },
  "r651": {
   "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/2147479617/946-210-S99-1"
  },
  "r652": {
   "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/2147479617/946-210-S99-1"
  },
  "r653": {
   "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/2147479617/946-210-S99-1"
  },
  "r654": {
   "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/2147479617/946-210-S99-1"
  },
  "r655": {
   "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/2147479617/946-210-S99-1"
  },
  "r656": {
   "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/2147479617/946-210-S99-1"
  },
  "r657": {
   "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/2147479617/946-210-S99-1"
  },
  "r658": {
   "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/2147479617/946-210-S99-1"
  },
  "r659": {
   "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/2147479617/946-210-S99-1"
  },
  "r660": {
   "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/2147479617/946-210-S99-1"
  },
  "r661": {
   "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/2147479617/946-210-S99-1"
  },
  "r662": {
   "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/2147479617/946-210-S99-1"
  },
  "r663": {
   "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/2147479617/946-210-S99-1"
  },
  "r664": {
   "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/2147479617/946-210-S99-1"
  },
  "r665": {
   "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/2147479617/946-210-S99-1"
  },
  "r666": {
   "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/2147479617/946-210-S99-1"
  },
  "r667": {
   "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/2147479617/946-210-S99-1"
  },
  "r668": {
   "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/2147479617/946-210-S99-1"
  },
  "r669": {
   "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/2147479617/946-210-S99-1"
  },
  "r670": {
   "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/2147479617/946-210-S99-1"
  },
  "r671": {
   "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/2147479617/946-210-S99-2"
  },
  "r672": {
   "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/2147479617/946-210-S99-2"
  },
  "r673": {
   "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/2147483581/946-220-45-3"
  },
  "r674": {
   "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/2147483581/946-220-45-7"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3"
  },
  "r676": {
   "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/2147483575/946-220-S99-1"
  },
  "r677": {
   "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/2147483575/946-220-S99-1"
  },
  "r678": {
   "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)(c)(2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r679": {
   "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)(c)(2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r680": {
   "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)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r681": {
   "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)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r682": {
   "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/2147483575/946-220-S99-1"
  },
  "r683": {
   "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(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r684": {
   "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/2147483575/946-220-S99-1"
  },
  "r685": {
   "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/2147483575/946-220-S99-1"
  },
  "r686": {
   "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/2147483575/946-220-S99-1"
  },
  "r687": {
   "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/2147483575/946-220-S99-1"
  },
  "r688": {
   "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/2147483575/946-220-S99-1"
  },
  "r689": {
   "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/2147483575/946-220-S99-1"
  },
  "r690": {
   "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/2147483575/946-220-S99-1"
  },
  "r691": {
   "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/2147483575/946-220-S99-1"
  },
  "r692": {
   "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/2147483575/946-220-S99-1"
  },
  "r693": {
   "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/2147483575/946-220-S99-1"
  },
  "r694": {
   "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/2147483575/946-220-S99-1"
  },
  "r695": {
   "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/2147483575/946-220-S99-1"
  },
  "r696": {
   "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/2147483575/946-220-S99-1"
  },
  "r697": {
   "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/2147483575/946-220-S99-3"
  },
  "r698": {
   "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/2147483575/946-220-S99-3"
  },
  "r699": {
   "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/2147483575/946-220-S99-3"
  },
  "r700": {
   "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/2147483575/946-220-S99-3"
  },
  "r701": {
   "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/2147481062/946-235-50-2"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r703": {
   "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/2147481062/946-235-50-2"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1"
  },
  "r706": {
   "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 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r707": {
   "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/2147480032/946-320-S99-1"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r709": {
   "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/2147480032/946-320-S99-2"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r711": {
   "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/2147480032/946-320-S99-3"
  },
  "r712": {
   "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/2147480032/946-320-S99-3"
  },
  "r713": {
   "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 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r715": {
   "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/2147480032/946-320-S99-5"
  },
  "r716": {
   "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/2147480032/946-320-S99-5"
  },
  "r717": {
   "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/2147480032/946-320-S99-5B"
  },
  "r718": {
   "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/2147480032/946-320-S99-5C"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5D",
   "Subparagraph": "(SX 210.12-13D(Column B)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5D"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5D",
   "Subparagraph": "(SX 210.12-13D(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5D"
  },
  "r721": {
   "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/2147480032/946-320-S99-6"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r730": {
   "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/2147481004/946-505-50-2"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r732": {
   "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/2147481004/946-505-50-6"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481058/954-310-45-1"
  },
  "r735": {
   "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/2147481027/954-310-50-2"
  },
  "r736": {
   "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/2147480327/954-440-50-1"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r746": {
   "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/2147482856/976-310-50-1"
  },
  "r747": {
   "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/2147482707/978-310-50-1"
  },
  "r748": {
   "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"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r750": {
   "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"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r755": {
   "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"
  },
  "r756": {
   "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"
  },
  "r757": {
   "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"
  },
  "r758": {
   "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"
  },
  "r759": {
   "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"
  },
  "r760": {
   "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"
  },
  "r761": {
   "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"
  },
  "r762": {
   "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"
  },
  "r763": {
   "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"
  },
  "r764": {
   "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"
  },
  "r765": {
   "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"
  },
  "r766": {
   "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"
  },
  "r767": {
   "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"
  },
  "r768": {
   "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"
  },
  "r769": {
   "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"
  },
  "r770": {
   "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"
  },
  "r771": {
   "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"
  },
  "r772": {
   "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"
  },
  "r773": {
   "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"
  },
  "r774": {
   "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"
  },
  "r775": {
   "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"
  },
  "r776": {
   "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"
  },
  "r777": {
   "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"
  },
  "r778": {
   "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"
  },
  "r779": {
   "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"
  },
  "r780": {
   "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"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53"
  },
  "r782": {
   "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"
  },
  "r783": {
   "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"
  },
  "r784": {
   "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"
  },
  "r785": {
   "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/2147480524/946-210-50-1"
  },
  "r786": {
   "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/2147480524/946-210-50-6"
  },
  "r787": {
   "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/2147480493/946-210-55-1"
  },
  "r788": {
   "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/2147480833/946-310-45-1"
  },
  "r789": {
   "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/2147480032/946-320-S99-1"
  },
  "r790": {
   "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/2147480032/946-320-S99-2"
  },
  "r791": {
   "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/2147480032/946-320-S99-3"
  },
  "r792": {
   "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/2147480032/946-320-S99-6"
  },
  "r793": {
   "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/2147480167/946-830-55-10"
  },
  "r794": {
   "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/2147480167/946-830-55-12"
  },
  "r795": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r796": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r803": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r804": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r805": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r806": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r807": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r810": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii",
   "Section": "6"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r819": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r820": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r823": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r826": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r827": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r828": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r829": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r830": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r831": {
   "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"
  },
  "r832": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r833": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r834": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r835": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r836": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r837": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r838": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r839": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r840": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r841": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r842": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r843": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r844": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r845": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r846": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r847": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r848": {
   "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"
  },
  "r849": {
   "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"
  },
  "r850": {
   "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"
  },
  "r851": {
   "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"
  },
  "r852": {
   "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"
  },
  "r853": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r854": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r855": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r856": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r857": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r858": {
   "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"
  },
  "r859": {
   "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"
  },
  "r860": {
   "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"
  },
  "r861": {
   "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"
  },
  "r862": {
   "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"
  },
  "r863": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r864": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r865": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r866": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r867": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r868": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r869": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r870": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r871": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3"
  },
  "r872": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r873": {
   "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"
  },
  "r874": {
   "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/2147479383/944-825-50-1B"
  },
  "r875": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r876": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H"
  },
  "r877": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//210/tableOfContent"
  },
  "r878": {
   "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(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r879": {
   "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(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r880": {
   "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(26)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r881": {
   "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"
  },
  "r882": {
   "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"
  },
  "r883": {
   "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"
  },
  "r884": {
   "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"
  },
  "r885": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r886": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17"
  },
  "r887": {
   "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"
  },
  "r888": {
   "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"
  },
  "r889": {
   "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(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r890": {
   "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"
  },
  "r891": {
   "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"
  },
  "r892": {
   "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"
  },
  "r893": {
   "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"
  },
  "r894": {
   "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"
  },
  "r895": {
   "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"
  },
  "r896": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "55",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55"
  },
  "r897": {
   "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"
  },
  "r898": {
   "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"
  },
  "r899": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r900": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11"
  },
  "r901": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r902": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r903": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r904": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r905": {
   "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"
  },
  "r906": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r907": {
   "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"
  },
  "r908": {
   "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"
  },
  "r909": {
   "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"
  },
  "r910": {
   "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"
  },
  "r911": {
   "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"
  },
  "r912": {
   "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"
  },
  "r913": {
   "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"
  },
  "r914": {
   "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"
  },
  "r915": {
   "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"
  },
  "r916": {
   "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"
  },
  "r917": {
   "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"
  },
  "r918": {
   "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"
  },
  "r919": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482047/420-10-45-3"
  },
  "r920": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r921": {
   "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"
  },
  "r922": {
   "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"
  },
  "r923": {
   "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"
  },
  "r924": {
   "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"
  },
  "r925": {
   "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"
  },
  "r926": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r927": {
   "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"
  },
  "r928": {
   "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"
  },
  "r929": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r930": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r931": {
   "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"
  },
  "r932": {
   "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"
  },
  "r933": {
   "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"
  },
  "r934": {
   "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"
  },
  "r935": {
   "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"
  },
  "r936": {
   "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"
  },
  "r937": {
   "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"
  },
  "r938": {
   "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"
  },
  "r939": {
   "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"
  },
  "r940": {
   "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"
  },
  "r941": {
   "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"
  },
  "r942": {
   "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"
  },
  "r943": {
   "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"
  },
  "r944": {
   "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"
  },
  "r945": {
   "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"
  },
  "r946": {
   "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"
  },
  "r947": {
   "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"
  },
  "r948": {
   "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"
  },
  "r949": {
   "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"
  },
  "r950": {
   "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"
  },
  "r951": {
   "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"
  },
  "r952": {
   "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"
  },
  "r953": {
   "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"
  },
  "r954": {
   "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"
  },
  "r955": {
   "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"
  },
  "r956": {
   "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"
  },
  "r957": {
   "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"
  },
  "r958": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r959": {
   "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"
  },
  "r960": {
   "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"
  },
  "r961": {
   "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/2147481877/830-230-45-1"
  },
  "r962": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2"
  },
  "r963": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3"
  },
  "r964": {
   "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"
  },
  "r965": {
   "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"
  },
  "r966": {
   "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"
  },
  "r967": {
   "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"
  },
  "r968": {
   "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"
  },
  "r969": {
   "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"
  },
  "r970": {
   "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"
  },
  "r971": {
   "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"
  },
  "r972": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "912",
   "SubTopic": "730",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482517/912-730-25-1"
  },
  "r973": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-2"
  },
  "r974": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-3"
  },
  "r975": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-3A"
  },
  "r976": {
   "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/2147479440/944-210-S99-1"
  },
  "r977": {
   "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"
  },
  "r978": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r979": {
   "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/2147480767/946-205-45-4"
  },
  "r980": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r981": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r982": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r983": {
   "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/2147483575/946-220-S99-3"
  },
  "r984": {
   "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/2147483575/946-220-S99-3"
  },
  "r985": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r986": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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/2147480032/946-320-S99-2"
  },
  "r987": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r988": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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/2147480032/946-320-S99-6"
  },
  "r989": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>91
<FILENAME>0000950170-23-056871-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000950170-23-056871-xbrl.zip
M4$L#!!0    (  2"7U<*\GMU"GT" +G3,P 1    <F=E;BTR,#(S,#DS,"YH
M=&WLO6M7'$F2)OQ]?T6L9F>WZKQRR>\7ZK*'0JB:'0G4@*9W]HN.7R&GDDPZ
M,E,2\^M?\TBN$A(((DE/\#K=54!&1GB8F9L]9FZ77__WYZ-A\S&VD\%X]-LS
M\@(_:^+(C\-@=/#;L_6]C:VM9__[]U__.T+-J]=;V\UV_-2L^^G@8WPUF/CA
M>#)K8_/3WMN?FZW1<#"*S?_]8_=-\VKL9T=Q-&U0<SB='J^]?/GITZ<7(0U&
MD_%P-H5'35[X\='+!J'YO3?::/.?FU=V&ILUBBE#!"-&]@E>XV*-X1>":O+_
M8;R&\<6WQL<G[>#@<-K\Y']N\I?@R:-1' Y/FM>#D1WY@1TV>V>/? YK]"^:
M]>&PV<W?FC2[<1+;CS&\R+?\;[\>3H$60(_1Y+=GE];]B;T8MP<OB3'FY>=\
MS;/Y16N?73L,@_-K\Z_=E11C^7+^X95+I]=>*N:73B]?.KBR@,M7LY= Q"F\
M6CR['LC^UW<NSQ\[.SF__/-7UU]YO_SIV:6#S]^Z+\G+R/S.[#Z[?#0>;0/;
MVX&__FMAVKZ<GAS'EW A&LVO/%_59'#=FN -R,O_^_;-GC^,1Q9]^>HA?D']
M2?0O#L8?7\('+[,\G%TXFZ #:X_/+TYVXKH'G'YPY>+!9,PI4=]CP?R*LR]$
M'ZY?!GQPY<Y  90I,+F!0/ =BC #^;]@Q13!7:]\[^PI%YQX.6WM:)+&[5&W
MFS*C!,+ZTGW:@SBZ<I,V'@\'!WG+M\?=GLSKQ8;A2T^^?K7?>VQ>/D5$GMUD
MTDZ_ICW\\2J3INTW:6Y>PJ?/?O]OS:^'T0;X;_/K=# =QM]!2_S]UY?SG_-?
MC^+4=DH'Q7_.!A]_>[8Q'DU!%:%](.RSQL]_^^W9-'Z>OIQOYI?YMB]/[_NK
M&X>39C(]&<;?GAW9]F P6FOL;#K^[X.CXW$+XC?]Y=B&K!_7&GW\^9=GW6/#
MX./9E\)@<CRT)WD[1/CTU\'GM7SOV,Y_'(001]V/%_NE&8  O?Z@G74R*8RB
M3@%QCCTRC#'@H/8VR>@U3L^:D3W*3XF#M3,U^QI4L1V^@SN-PVOXV^3T/3]/
M=V,""GQPCFD7>$!.P#VYBW!C$322+'+"(Q-6JF>__YW]^O+*LJY?I4G)ZB0T
M\@E$E+L@D68T(NI(9(8D"4^[O,K-$7#G9 /6V=KAUBC$S_\63^ZV0@S_*(:I
MHK=:*8LB^2@-BD'!2K$UR"DO$+/6,D\$BX%>7NG&K&W/R?D?T;:;HY -TMT6
MBQ"AL/-NM5*:O)!.460=ASL&GI#FR@-A/7$61$+J*RM=![:'CO5#>W"GY37S
M[?K;,]C?:VGP.0:4[!#,Q._=?[ZQZM>M]9V=GB\[)4TBT!%9*3#BT6-DL5$H
MN CFVG OQ+G GFK:M8WQT=%@FM<^61^%O#MA*X'^&<2OQ%8:'*33$GGA'>R'
MX)&C!B0MF<A(8E9J4&RST6#^A?<?WN^] F4R&:R-!D/8XNT,7N?L3<Z6_HU7
M@2T&0@W:Q!!/$3<V($M!JK5*D4OLB+7R'J_BL/$8EHV$%P1Q(1,R1BB4DA,I
MAD@QXW=XE9=7-4H;4P0)]G'R^Z_9D*]-.KL)MVPZP[Z6K<MOSR:@RH;9B'9_
M.VSS$[-A0&>Z_\7G2<B/NWJ/^>,N/Z/[=3*>M=UO'7!9.WWOCJP;'[10FB=B
M@)A@$'@@#-[;!82)I0I[KY5)S\Z^&CM-<?;;(.3?TR"V3;>$>*WQV]CZMZMZ
MX<LOG]UN$@\RI^:_!GC89S!\?C!]&X\</"(,X-,Y"#YC[]X4]G[^SB98$M!@
M8S  HX[9GP>39[^?7;8+%@<,8=BT[0CX/YG?\->7US[G][,%GB_GY77O?MSI
M\G-*=+!G^GMG5T^5RM5/SGX_^][+*[RXGC56:!V=%LCJ")N74HN,UQ8,-Q9.
M11TCV.]"60- ?GP4SQGT9NP[Y/$E8R:@P_TA[,U7\6,<CH\[9GX^AKO%_KD$
MG&BGV5S,^80)_._\/N>?G=,S7+K4((8O'C'_Y"XL]5QPH0U%"LP>L)2#00%F
MHDB99]YSRXDIE:6@/GV'$3(C=P>3O_XX^0/4S"%@L+^N\G7/#N-D%S@ZFL7M
M.+V!DS<N &#HVJX%Q3U_2O[U[6 T.)H=W??.WWFUC$:OOM7&;#(%F6Z_NGC!
MD@KP4MU24EE_DFJ=5<18AY33"DR[B,@H;)$0+C#*'!6N6$D%O0+VV$]G+:C[
MC?%D"@KF-)(P9VFVI:"B0$"GX_;D'^U@&G=2ZDN:;J7[\K)V4K=3%B\_M]5T
M/<K/K?#4@N5G:9:;84(ER5O&N82X=PII$01*@+TC>)#12U_JYKF5].[%(4#/
M@S_C*(+/"-MK/1R!2IYT6O%C/#7ABY;LY=AP!CZT],R U\\-V'#MD E4(>JE
ML-%AEQ(IE;FKH!G+D*WE6%U*&7-)112E]N#D$H\,Y>#S>I"N9!3X[+14V;JE
M-[8>PB SW0[?V4'8&FW8X\'4#A\E.R,EDG)A4* )G.M$ M+4"Z2CBCQ)&K"Q
MI;)SH9CX5IC_K?W/<7OVA,DE_?1NUHZ'H)D6"/^_X=FL>S^>@4CO1A\''ZT;
M+MI-70YX\TH$9PU'+#"!.,L!R@CXQ02+I4O<6.%*E=N>T7?/IA4$* [!KDUC
M>!6/V^@'W>H>I10Y+AR8,Q ;95P./CMD19((4QNIC];ZN' 7X$>E*.N==^TX
M "-WVCU@WL!_H?)./UT\M+VMO>H1V@J7"%48\$;0&=JFF,-3X,9$ZZ0UPEA>
M',>6@"U[U@FOK1^ .3N!#W>FA['=_#R8YHL?9V! ^T2%$1(E#X+&G:8 AP 8
M\1@MCF!W#-.ERMBM,-&?<7S0VN/#@>\=%141BCW?8A<O"EOIDHD[MKZ3XT?I
M_0OF*8M8(S!NX*$I09&CFB"K/> DR;6@Q4*CUZ#JIO$-*#KPNZ9V=#   +L^
MF<3IY(^3.=H>VLD7_EK'RB\O7Y4C-*8HCQ)N)XD#%<.P!6YABI2U.!FN0V+%
M<2OOL?V<+K.3MD9A\'$09E?VU_9XM/DY^EDV6'TIE/5/M@T7JJQ[3F>\!AZ0
MZMYT[/\"Z_0NMEU2 BB?[D_O09P6*PI?V)W[B$)TRE"J$S(LP<;5V"'-G$74
M>:$X98FP8D,K[X9VM&V/+G.G8\#.<0=Q1K"=LST @<A7+I(C1/>X.6.4TLJ$
M0E(*<:PQT@X\!1P2D8%(*6FQ@=0_9I/!*(*N]/^<#2:#"Z0Y1W3#^-D-QI.3
M"3!F\2B.(Z)NB>(N7WH?,Q@T 5^ *>2<SB@N<N2L 3,HHL+2>.GY:N<F+"U"
M\,2\ 0K. ),1B6 DXBEE PV8*E+-L$B"@(HN58[ZTP&W?N0M8^PY[VT\ZDS$
MH]0^AF&3A%-()# ?7&J&M)0")2:#BM$SKE;S?+63G+=V-$OV5$^\ 1';_'QL
MN[OTIHK^W0YGW6/WHS\<#?XYNZR!WF9:;]AV.-X;',V&MPE0WOK!KX#+'[M8
MR]8H:\-,@NS 7GK\>9HFJ#WX=HAMKRMX;0=M?OT(+D^TN3RF2]-M(Q!AY$^N
M;J3SBR]=FH/_LS;S9E6@+Z,<(!81R+O$$">8(6N#0P8;^( I#M)6M\M=M\N[
M=NRLZVSV/V(N6XKA70MF?30]E9RZ<U9VYW!KA>!4(&P!'<%FT4A;RY D%("N
M\";*8K.C-^PD9];F_V2T\!&@[#E0F(O+_ )0]_'DK6W_BM/7LU%8F=B.=<X;
MXQR2*I=D^!"1T1(X#PZ]-UH)JU2QO*F'ZP4<KO]0!/F*W-[O ,0X+FC(Z=^Y
M:$82Y)+$*#@>K="44%:L3BDMQ^>JUI=]A0HQITD 2@('E .'3$!:Y>H88Y0!
M?FD16*D<6@__"9NZL[:OQ^UV_'2ZJ\#H E 9P8]^;HNOW7MP%;!X%&P;)N^/
M S ;*(NQ7+!-Z"_(:X,D+A_'8 ?V.EJ+M(D:'H!U"(+9%$2IG%MXR<RM5U)X
M*LLRJB%D)%0Z@S0/H!%B !PH14+<*D&C\" *Q<E50:DL2SBG)=20E*A'+)\P
M< >FUDIAP04.)"F:E K%I1E\Y^0O?W1^ZK>3$O#RIO/UVYN,QW_XYU,*..6<
M?0R;F&LNP8_C' FADQ X8L.+M>B%E1,M9SN;I*VD"G2OS)G4#."S,Y8@QA+G
M& <572B5@<64*1=PWL.UQ%Y@C8+'N0 V). C35E+,VQ] G!=["E\<8<OR]F*
M,7E,G<#(""IR6J]!CD6'8J*6.6&B]<5AH8L@JIM>A$\OV;O_%]OQN_%@--T_
M;&/<RPESKW,Z16S]/)SZ,;;3G/^T%T<#\*O&TSAY-8O[G^#3D_F_7X]G"TAY
MNY1Z83+T[2=V1F";249(3F#+@8C@D/:2(4H9X=+8X&.Q]K 8=7H)JI#^PIJ1
M!)5"@IV5@T(\68DL %G87F#E@DT6K&"IK+E3@N%^:T/,T<"5B3Q3H00)7"/!
M?(0ME,_3)%@R)I4W $BHB\5&GF_T[<\NW#PZ'HY/YKJPS:C_43KVF$E.#$\(
M=%ZNT&,R9Q)(I'+W QYCX*JX'+3OAN_/_K8]RU_;&2TRCO^ 1Q8K<)JP'$#-
M*$LN,HY44@YQYQB@,>^0E "SC5>6FF+1V/<3J-8_PE]"!/UTD4K5Q\G78EO)
MU,R:IY0? #! 4PT;#P!S0EPGC[1F*5<T>:ZTI4X7FP9[J]WW(/G+2U"; *69
M<CA7YBN<.[0X9$VP*)EHDF0R.;_P\/"/N_L$/_QQM7<Q.&L#PCY7\>8*"IL"
M0P":O/(LX"ABJ2)>0L1F,4?4%B=&;=+()9[;*U&.-&? <^%XBMSKQ(IMS_7P
M9K\:YZ=HG"5SC$8);AU7)M>H&&2)(H@I$Y,+3#)>[)G!*@<J^^2APH'&"$S#
M(N4$3)? O0$MJL$D4<LP_%+/"QX\ *8MERP"+X(G$="3Q\A)X0&?&",,CC+P
M8A/*"T]N60(65BX('7!"B42!N/0!.<\L\%6K0#T7NMQ$VMLF)'H_ZVQZG!?5
MY>O:>)COEDUR/F!?E10W09D*1FC$4TYE" &0'V8"@&!@(5$"=FW%]]YRVP\N
MLRGU<O8_Y0[<.,-1THR!+T$\<A@'Y#WH<N,M=;2X5*E"DV.6P\!H05_SZ%#(
MO08Y, PYZ_):2 B&8!=ML:>Y*PUT>X147E$I/5>()=-5LP"DXE8B&1(A2> 4
M&2Z5AX5$$I>3#J,I2]A(@DAD$M"3X,AZKE%0-J@(^%CZXEK,G#'NS7ATL!_;
MHW<S,'AV$B_FI?QQL@$$.0 CO).V0+>>71%N8RS7VS:?L>0?^SBPN3Z)>=X+
MY\\W6T?'UD_7'Z5LB<1)\)@AI4$5\'S&8+K6:<388 &R.UXL,B\IT6 QL0E#
MB7,N*12-"8@K4-F62(RDTO#WX(A)Q>*FVLGN^YWLNGS[63L^?IQI+PX;2VWR
MB,ZK6#1#QC*/+#64Q<B(*K?MRBHXD0_J<2Q!?GP*1J48<^TU09SEP6_).*0M
M3MBQE# O+FVJ'@*M73K.V1H=SZ9?J_POKWC7 N#Z]W$F1&YP\2";Z+0 J=/T
ML+?AZ4"J/S+X?&=/NJ.H>BAV]\SOJ#0WN7^IRW-Y)!'@KBCP8G70X&82C,L]
M%*NJ-Y_\<^4MY@99DS-7,$[($94096"\I:*2IN*"/=>EW=G/?:;=+5^W+LVL
M5%VZ+%W*DA&,I5P)I?/!&=?S\<4X8NEI5"GY8H]B,CZ>]XGX&@2\W]MO.[Z<
M_#$8#O<R6P;3P2+TZ6)BJ81&8SF8-T)LRO49X-CH "ZZ#,FRD*25Q25'W5RM
MOSL^L<,;(=AJ!KJTL,$PBU%@VB).A4!:$(9<3%A%K)5B"P]T+>U$5P;CN+8<
M>6%2[@JDD#;@46FA&7-8)!Z*;0A4?$_;9=0464PQT\#%V!7(:HTL U\9$!JF
MEG!&3;%QP27TM+U[T6!NB?XX3W2#$II;(A%+UF6[I9%Q,>0D#\)YD-CY8KVT
MPA*L%@/]'%<Y_1TC"VX8XKGFPPCND>2">6NM#':UCVL7DG_][?C3W$OZXN-<
MNCV>35\-)ETIWZ[MKROA$PX"/D%'S>7"7AX<(HR".L6! L+2% 4I&8N>>Z6+
MM<@EMCOH$?RFX$T@-B+CX5]@\Q0R-((BM5I3QX0TY3;V^:)QUE<'VA<C6OHX
MK>QI)E QFU)Q)TVP%IGDNFS6/$?;)40C<<YXKGRY&4^KE[5V&=3..\D0<PM0
M^^6E]SHT#(8XR0+H7@Q:6$63NRX(Q*R7VDE%!2W6SUV5MJI?QG+RT(U;QG(N
M7WJOSHO.X&221X&:7'N5JW4(<%T9RHVR 1-=;&Y!V?V-^RN,P]1;"JJ6YA90
M-@&':'+@YG+@3_(ZJ&)3%E>M2^X3"WT)FSSA#$40,,0#D<@8+)#5B@:/70JN
M6,FJH:]%Z9N A<*:)Z1EGJ+!#4@% >NODO/)<,>Y*+9+QB5O^?S'O\$=LWHY
M>9.5RS<<YBZ",>FN8*O"*$\D@'+OD  3D&O+!'(,W&85A5184.5IL:9[5;;O
MJ4&*H8L\C8?C@Y/=/#7H<0:R4W+8NF!1]):<UI82EZ?H1&:HT SC8H_(EYJ;
MO-@N50MMYM:#VW);Z-+C$;1DQGM&<B*T\J#[/$%.<H&D)8PDP1E;_!'T725U
M-W:ES>^ 4"< #T83ZS.O0 M=_N3+YO^#D1\<V^'.I]%#S&I? DN],E*KJ)'C
M(2*.N46:.X,H]B[XA!DK;^Y=*7D@R_$?>,2.R0C[CZ7<'IP:L!2!H"@B[$W)
M%3/%(L7%!.IO_?A5B5 MYAB!,*EQ!(0361[9I!UH;_@=<0.:V\M<WEY<RE>A
M!^8%J(%$:#(RY^[%K 9P[LIK$T'><(:=2%[0XA3W#P6H]N)P",S^,X+IM4/@
M]WHX H0WZ4#6QW@:J7J<,2+GN<=.*Z1(/HS5-K=>I!I93;S7F%@9BMNJM6_L
M A,2:@+[#UG-'N,]-#  PBH@RRD Y, B_"0$2E@X(4, [%7L$6S-):I;]REO
M73"7CO.<)>X$N$LF(:UAZWIOM,?"$)%6W5-:QBEKGYE-7AKKM4%6I9S63P,R
M'N!LT-@'++02L5@.S??UOOV\/IL>CMO!6?#HM+0^S?78;LQABKS?_70G[7\:
M[Q^.9Q/P(L_26<:+#RMI1.0MPTJ7+[U?'HLEP-P\PRR/Z0DL(/!).#*8"$6M
M#U(6&RFL'7_*#EEJ!I K'Y!RGX>#2V:0CE8@I@GE1#O"^,*G/_VPQNRMJ;D2
MA%,!=W0DMQ_-#4D4CD@2FZ127&I7;+/?5>A*LN36EDN(-1 PM'DL(>)*>L0-
MV& K/$<$<\TB24R6&T@JH7UT 2?(,ABLN5?(48=!(T:%+%,,">P)=8F"P2VN
MW\&"&E;TK(R>5FH:)5Q1 [X2>$X4<2QDEX30]<V@DJAH7;$MBXJI 2F@5-R9
M! "<2J1,,KDG(KC .+=,M5HP'9W0BT=(=^7CRE3> 0!WUG7: 533S'M8]..)
M6BTM8/<$XU0Z*>.P$L@;"YC>!(Y<(@KI1(F+5I+HBTTI7%@+TPKK[VD#-',*
M! M%!XB>@YN,= !,R!E)*D:&C2O!2[X'I51/T]N4#U0ZD2/$>4"AP#:/!X5_
MY49%TFHB39W>]N!*T1!&0N0>^:@X^*8I(2>I *4H8C)"@C 7ZY8^8'Y#S_[.
M4YKIPWF,7EF-@N VEU43,+N)(6:\"Q'+:$6Q*/FZUF1S6&@GV<CE_V25\!%<
MYJP-1@$P6SQY:]N_XO3U;!16IE&9TLYSK#UR-@_N",0B:UQ$AC$B5$Z&8<4.
M;ZX=Q&_N(+X];J>'ZT<@$=X^3C43@Y61<!24E+D/M$4FCRH@#MM$ B9&+OR,
M\X>M>%_'%5+&J#0X-$3DLC:2--(N#\K51!CB)0=@6NKN+3LR^91R77/PBE/P
M8!S+$RZEA"U$0(J"P98;'TABQ9;,KD+=R1)"E-+@()V6R OOP#W-W?&IB8@F
M$\%#95;JA8>:E^;;P-LJ%1) I!# (P]Y7KA1":D0P:VADNO%3Y/[T9<G&%'5
MQ\LSC(.*/"'O@0(\T#S%RQB$F9:""!)Q++;%R9VJ6;?'V9 <QVE</VAC[#6K
MK[^*WM4$5U[#CG%6H9#R9#$;$M(4T(LG.G*K76"AV'2(HE/\^FLTS46D$HRU
MT1G^ACQ&1PN+X <5O8A:VG*C:S,WZ<X=IIL?XW5=P+^XX&%V]5O0)*/Q1[ON
M%KZE0>EC>KLM?>72>P6N'8-]RW/"(/9Y)+U'1@2-)(N<\,B$77SJX(HHOX"3
MY2D@Z@"5<^> 4AI3P!)2,Z:X]ZQ82[K8](M^?;RG-^Y8)"Y<[JT,JCI7&-J(
M+!$,41^$)#:24&XBR"JP= D^=$R14$(4HIU:E5H@;;E"BJL40&-X8&RI++T3
M[#YKS=&YV=GC/AP<KTP[*&<#5P*\(BD%.$DF2>2\UL@%0W)>EB*XV(C':C?^
M7);&%118(1/"F*D<#^'(..Z18DK':"+3OKB*WWMMS\Z>?WGYJFS/1)D5>7J.
MRCW:N((;:T,MHHH(4*@^Z7*/#NNA5%&'4LNIH1%<:\DQ0Y&8W(0R@>M@O "4
M9U@4BA@=BZW/^L81]]49G3]VVGU[5==#JT.R*J&;X+U7C%$D>%2YT J\@, X
M4EIC16U2OMS*D*4&1A=C=&+PP@7)$/$:V)%C(HZ"]R]@(P?X/U6XV#U;6)Y:
MCP5Y0E-''?A5*8_,X(DQ9"C3R/I$7/ L4%IL!+J@3<(1Z>5T21O/B=01,0I@
MFLM@D &0A@A6Q!N7HM'%XNC;'@AX/^NR[N,\*):O:^-AOENN%\C1CU79/,%)
M20RV2 "[$+< A1RQH#")HU8)@4VYTT%OQJ_=+MH?3^VPZT=]VD8NUR=$0"W@
M],S;% [BY"R^>?%1;XAEH6U,;X6UYQ[@Z1,FETCS;M:.AX,;F\ST@+!OG^!P
M!3S=KP;+1J=);LYHNVY[$1F=,/+86YUL$B05F[>X>A&<"_7TY326>S60D5+;
M !!+"9YST'$ VYZZ.ATCL70ZE5N84]W\[[OY\R2Z8^L[Q?LH8XK<&,P5C2C$
M!$X^41)9:@3L#QRC5I2G<@<PK@P6ZLW;IIXF2:U'R79G;H[E*D""E(W 1DL9
M+7>>Z<T]SM[:T2S9T_/>-^!U;'X^MMU=>D,ZWRU9O52M^X^89PG$\*Z-$UCL
M:?WH_97-8IM?+K\D^ E6YD8E#%&:(V' ]G.26PWE\EP<1(PQ4(#KQ1[#U=$,
MRQG-L!Q;[Q*55 2!@A Z%_E*9)3P2$CJ+-=,I%3<B=3-??Q//WV4"1DAQ! )
MER@R [J%1HHT(1&QP 6Q+@0OB\W>^F*J:V=]WG<EB8##NFFNCW-43_3&AYC;
MK=G<J4$:AZP SY[DYJ+6*Q;+G;UPIU/Z=T"IF]/5B\'07@7K#6%(18IS[B@&
MAYUXQ'*%@9%&<E/L$.MO3$KN$B4''C96=RSR'I@XV=U[OS((BBN9!P.!-8J@
MY3 H.&TH&*=(X;^"4EIN(M/W#IHO%UL_:&EUC[PA4=&,9)%V)L)N,1PYK06*
MD2F!)7%*%&N!5J3OS.W+0U<3Q&"G(LX%O2SE'@K$&V2QQGFP3/):2.-CL0<X
M2PU:7.<DV<\/-BUCP>&0&K18HEK'GG"JP>1:SA+B7$7DF,WS)'& O1FBUX\+
MI#[@N- %U<CYX'P@!-'<?9?[? QNE$1):YFDL,ZM\C'XW<),#WKJVU]>)0E,
M6<40"=H!)XE 1C.)E)3$RI@PT<5F VV-0DP_LO_F^0TYM2$S>U74(W-8):L9
M\E* CQAP0$[Q?*@;I;3*)HR+S1!:>#.).^&6?H*[^5;=$G.ASB4!VSN./D.'
M%<K4Q()B;7Q"+.9^)2HGSJJ0D$T^,D(5L:[8@]>%E\_UY^(]N8YUQ(%UR=V<
M%>-QKKJ,)V!GK!14FVA9*/:(N+1N!P4485A'(Z64HY2;]7,:"'*A&X'DDQ/<
MY'ARJ>R\[@3@BU E;-=WL4WC]BB'72ZBEX]R:P9J#?P3<F,J4/DT1SR]2H@F
M3Y(SS,98;.3YJ3>1T51Y[SC-!_PZCT/V.8@%:I58FX"G!I<W;?5>#O,Y9E^9
M4#4+(H0<I;86 V@'+PHYH3T\@!E.*6%"E'N,4*B'O*2D1!*3-#B!ATP3XAIN
M['*51K!,QZ M2ZHX3F;79'\P'<:=!$[RX.,@S"Y7BVY^CGZ6@YP[*0W\_7VL
M&TX$ST\TLD6=G[:ORC:V 2"L!.SJF3>(8V60 >2*F!-,&"HB+2]+I:02M@).
M?(SRFB7J$)5*(9YLKAP&!Y=Q<'JY((G38HWEZO9E?V)SJ"31DE",5 1#P7T^
MRS":(,\=H4G8R&2Q8+HX-;$<WS8%,.K@!B$65$;2QB'#P!]B- H=E-:!K'JH
MX@&+E?MK/$N])EP@K#.,YL :[;Q#SMO@J);2DV(+FDH^GNCQ+)!A9A@A%FFN
M+>*, 7<,=WD:#0LL.>%<L;KOR9>!W'&47!Y&.)Y-7PTF787PKKVQ)O;6*ZD9
M&$MP<T**B9B$YT-E.+.@9KD%7X<XYK!A3)7;XGH!W76*X0L#_](0G5-0!8 2
M92SHUMP2D1+-/:&"EPM*5F%X=C^NTVK&M3!+),20D( =CGB$?QD/HD:2E$1X
MPC@K]LSWS7ATL!_;HW>SUA_:2<S(=M!-E_KC9 ,(<@ "M9.V@/5G5X3;G >O
MMVW.%,@_]I$<<'VI4"?VVW^^V3HZ!ERQ_BC]8:9L()YHQ P6H+>X0MH";*>!
M1:8(P4H4#-O+;\>[!'7!@DW""P^:(N2ADPD@0J0:%I*\I8)RE<I-TNRA"1Y;
M%7\LDD0#$1AI[#GBDD3DB)%(>HEIPD8376P?EQ5IHM#GO#%LC".Y[$N07&X$
MC-(^X+S!"!/4$JF*[9&W,%>M&/SM G$NQ=SN+6L^+!5RU%OX*7!M8O L+1Q_
M_]C+D_X4B5,\"NKRP4GN=188039JBXP*03*AI<#%.H6E)6\MAD,FV2@<8'9L
M4VZP";Z[ :V/#&9"AL"IB<7"K'+SL9:3B$\]TT)C %1=PH@$"^,,)XCZB%7"
MWA#^Q%S]U71]%%9$<$!>*>=3<P&V/.>YHCST43N<O++%EL84P\?%6'/)I#,"
M;)EW&KQ2RB6RC!BDF!-!4T$<*S838$7*AXL)J"UEY[.D\M&_")+G('I$QH!=
MUIAQL,@T)%TL7EHAYBXG/8 %$FVP&)0%X&"NO0"UWI4S:&N24"3Y8E/?;PF&
M=^/4#D8QY,,]8//CY*.S6FL; PK> &2VT<'^3#$/"N,4,^QUR?6.N6%1_M(U
MS<.N/05;%<O,.;>)!X.(S75"6":DHZ7(1QZC#]9:QTKE2O'Y<,NH^]+6*2H]
MXCX /RW +0L,18&9!"PP <MB@\4_QL_,QZ?!TYBT5S)))&BN$<UYM,YX#%H<
M+*!RV./:2FR9.I08ZP5U 6'F8>,10)Y68HZT"$)Y0P-7Q3J>Y11T+2?X8Y45
MX)@J%"R%O64XH$L9 %UBFV$G_"B*#?X4D4/W@_EKE[+J=M+>S'N0O<>3P/;=
MA,*W6? V;#L<[PVZ,[2:.7>O0Q(:J<9"HZZ6EDMCD<XCK6-0SN2!=:*\)N@W
MM[&=SWDY>90>H(DAFN 54C)F;"HQTH'EGBJ:D1!H$N5VFUJ1*."#-A%<QAQ[
MS)/PG.7QJ0QQ%AVRV&&4)#-1:.4I*=9=[0]J+19];X^SI!W':5P_:./<.JR*
M45!>>QR21M;FAG:"Y2"39D@[)52P&)!XD27#A?0V7T8RK&54Z)R&%95 /,^]
M<BE*Q%2N;3$Z65KL2?H].RJ ">E^V;9'_16)%C2HL;^.#E$#=.!YO@WXUXF
MB$BO46#<D\0B_'_AN&$U#L)L\%0:;Y!T)A?-:X&T3 1@E@XQ&,Q#N3UVBXS^
M+4:@#682&P<2;%.N>(T!:>,C\H$ES9G*LV16EDUE .&GER:.O6&,6(^$-: E
MF0=_6(&?1<'G<N >YQR84H6JF'/2!17YQ22CD18E;A7BWI-<H^L13A0+06E(
MLH1DU@+"L2*XB'/Z5E*!(!Z$0180/4I)L423M,D76])\JU%3=8SFPXS17$Z$
MB\-^MEQ0)%D>8>*(@(VN PK:"AVUH-H76P&RM-CU\L/V-Q^DG&X20!/_/A["
M"O_(A8WO[,EM@B.W=R>?7A!?<BIDD!H9G3<,47D>"$N(F9!2,MC[<N?*_.#)
MUZD(S>5G$?T;Z@:N&_C!-W#2PB0#=[0D2,0U=_ 3!<#F')/),B'+.X5;@6Z;
M2X@=.>^M"C8B%N'Q' >&M&$:44^L8\Q*L_C)(BN"\J0'BGB)',E]ES@!Z1="
M($.I82%%:URQ,E_8*>)R&*BPH$P3@O*0SESZ:Y#CAJ+@.#-2,,?*345>:'WE
MK5>Q'OYS-D^(GKP>M]OQT[KO\ Q8KG?M> 0_^KE!^ZI\_/0J>(U1L&V8O#\.
M\$+ 7XSE0HU>C[WQ2![.X[!$A = K9IZY*@1N4%MX($EKAU9<?EYX)*$Y9@\
MS@-G-,_WL0SX*$1$QMNNE9YGPOJ@<+&*?$4:-O18<ZU(#J*2B$3R.8I*+9A=
M#;YBT(DFG$*,Q9WMK^"PNCZ'&R6";0H&<=A) )0D<"QZAX2WVH20>T,7F_!5
M6&?7'O<1D2[Z?#Q$NO9CV@FDDQ=(\NA5LAPS7VQG]=5MR[VTX5/+:/QN*?.8
M&(2YDHA32Y"+SH&8Q:0%URJ4V^"NT-8Z/;:I2E8G*V0>8YC+B:((R/!<-ZVC
M()3&R%.QAQ2E=9<IX-P?<(_#5B6$G05GEF.+M%$*$4TEH%CG<#WW_T$_L:\6
M8XHP[<%'1$+GT7LI:D"L.<Z0/.9&8H7+G6'R_3S"]8_PEQ#?#!>>1"CZ:I8>
MB V .E'0.;/ )X.LTQBVB<LG3IH%7JS6>S>THYPD>GG4Z<5$'X ;6UT@&VQ6
MOG)5O(,4",'"8Z2=!.] P1:QB5EPQDWTT7G#5;%1N#OY<QNSR130:]L-X,TU
M>(>#XYKW^YTM*YB, 6Z'C0<8&3D@2,(Q\IYZ'^!3:HH5D!4)S_29Y&8<"=X1
M9 Q5P"UGD,."(ZTHXU%'ZFRQI3DU=>O[J5OYX^UQ.SU<!_4%?WZ47JL07LM@
M)7)4 4+@VJ/<L@8!;)!YXBX Z6+5S8ID99?1QVI)^=DQ4&:Q1D+HB#B1%%D0
M+403UT2I:+ JMM"I0RPY7Z:=GNR#V$RL[P#,'R>7/_FR:&TP\H-C.]SY-%IX
MNN>2JE$)5XH+B923P-(D--(:G'!)F(J1X00,+HVEI92@+VGVM@])T^01,>!I
M<&HT,EQ+@)0\2(MQR9NP:MB;#+@,44AO$%%1(VZQ128PA2SQ4@2N:23%NO@+
MF*5T>V>VAR$-9%7<%(QMR&V94#(Y]T?&A+0 (9$N**N4H$(7>XI<W92BW)3E
ME$AYG"<[>HP8LP%QEK*6TQ1IR2P1SN81RZ4*<$F':P48+*J<%RDQ%!+%B(=
MD&&@E0*+V$NOG/#%'MV4FCR]G(Q2:70('IP[:Z0 YTY$9/-)'%,\81,X@2U:
M*B?+:0&XI,1W'9/P*J*D<Y@YB0"\ Q0I$G%2.6UEN2UP*R(HJ.9T2<WOA>!<
M6/!AN_'IC$6D8S!(:X^QY"$R5:[XEC9!ML<T&Z^\)T9;)!GW\T[,1E."=#+
M?Z62-L7BM.);;"S'RE.K83,1!1M,:,2%D\BQD.>O R97/C=E+C9Z5"W%S;[C
MYJP='S_.[C \<$RPR=@T5_=)%9!17"!GDL6<!"-2L=JHQ"RQ'@=1 LVTXF"[
M5; I3_M+R(G X">7E#**L%AL-ZBJ50K1*LN)11&9HB$61->#P\13K@,/S"'B
MI<0D!6EIL5IE5=JQKGP5D 63PUS$B(G<OI%XAXQ1% 6MI*0.!T.*U6\+RZM8
M311!I?<T\8B$XQCQ2#&RE@:$,?$L:,J5*9:5;\:C@_W8'KV;@<]B)S%7;@VZ
M$N8_3C: ( ?C]F0G;8$F/[LBW,;?66^!W0>=^N_#EEQ_--^II.T_WVP='5L_
M77^4LN443TQD2.KR/&X)?I43(G>BL"E&'A(KMRQE%?)CEA":PL:F1/,<5I$
MV6)'$&@+E2OF)658^""+S:BK&=[%*8CHG)%$(VVM1%PH,#X\"81]$CY&1F.Y
M.**TNK7%U#OYP*,002.K<@9M;L%O2<CA,DL$91&TP"K%QQ[.@]S-$.+"8WP+
MNN=H=K1 Y_B:,9:GJNM'7?35=%QIK@(+EB/B6&Z6G )(JL7@DVA,!/BPV!3;
M*+VP8:0]'ID0D[CS!&P&C@+T!_@8QFOP-J+#2BE'E"VV7K(T#5_ )L.1:*FP
M0RF 3>!1"C#80J+D8E2&8H]=L09[51I<W8/-[-*NO0^;M4M>&:&19"1W4P.H
M[[AG2!F=>&Z$3%)%^>7H6!9BPM2CQ#P'-QOX9K$F*'(! -L0(F2Q^:^WZ[22
M[>-H.FY/_M$";W=2>I3>$*<1+"67R!F ,=R 7V02SN5$DH"ZC2JI8CLGUU.C
M<DZ-'B2-8@9:MI/;]Q_>9X4;NI>?[*331.U7X^'0MI.]0]M>G!>%P4<0MLNW
MV)X=Y73@\;GH'<U;)_\^F(PY)6KM_=ZKLQ6<?73V^[7?SW]\%4?CH\'HNMN>
M4B6O:O*]^UZYQ<NKJ[]TV374.)Y=>N&KC\T??>^AU]QMOM)OW._FU[CFCGMS
MR?KJEO,>%/,/?_"6K^S)UTOL[I<_^<&; <._NM<MA>'W7P>?U]I+)KP9#D9_
M[8Z'5]5A_L*+<7OP$O ;>]G"QR_S=<\:V_KV^Q>?7O$R3V!&:3R>CL;3^*R9
MCG=CFOSV[/7V_@<EI(TF*B0,RQ$3PY#)@:WL!7'EM$\,OI':\='I=SY8%T4>
M_(ZT)@EQ#\K?"E#^5F-EB3,FB="\_B"UH2'D0QJ5@V44;+TUP2*IJ%.*&$>T
MALO WS*))(XD(+7<J2LAG?+4,$9 [VO+&.5P&04(ER@+B.($$(_F0"X. C$G
MB>(YG<UBN(P3GK#+J24BPD.==<CF'G/>>.^EX#[@?#?M%/4AY]H&;P$PJCR?
MD5-8:K 4[AVM%W"943028BE*-F0?75EX!05+M80Y+AWE777ERR_86 9?B=)4
M I<PK!5>T7>8."!B L&< 0MEN,K7&*6D5@*;O/39GAODG*-(8R&C=8GI2($H
MU@+AP4E&%G@XSRITN>0M,&D<,\%[XC,G(CC.4F0!B8 .N .1"@YTO8P2A,='
M:3(G+)?!4YNA P-V )N0I@K^!5Q-/I'H BZ5Q$GRP,#U0'GL:\X]R*TFC )A
MHUA;JX/E_"J)DV @T QH)S5(FTT!.48""@KPL-*!1,& *,Y)Z5U.J"6D<ULS
M0A8<86N,!\8DS/6U1)G_93*>M3Y.YK\>1ALZ0PWFX/?_UC2_'C>3Z4E^]6P>
MT6"4T=0:_B6!O423P7_%-8*/I[\  #D8C-!T?'SV6;)'@^')VCY@B$D#[FBS
M.SZRH[,+W7@*'@E<V]W5#@<'H[5A3--?8)V38SLZ>^BG0S"^"/[BX]IQ&]$G
MP!U?/ON[CX-G?1J$Z>%:&DQ19^1'^2'_\U^(Q+_\^C(_"U[V^.JKNG$+1)B_
MS0LECJ?-9#P<A.9?</?/+PLG109YL?V2&'X\'+=K9XOX-FD^Q9QNL38:MT=V
M>&EY_([$:FY!)W)&I%^.;0C@[9S]M1+KH?9/+W1PXV&XO#A]1S*\W][:WWS5
M[.VO[V_NG9&D@'55]G1DV-O<>+^[M;^UN=>L;[]J-O_OQM_6M__<;#9VWK[=
MVMO;VMFN/%L4S^@=R? /"U9[=# =CYXWKUYLO&@H&'FS #[==8'?Y-,IA;.!
M7^/X7[\P"6<&XY0!Y.SI/;#RU$!=W/G41IU>UW:O?[ZB19H3N2S99S<]>$4T
MUNN=W;?-=<+^ _=^UOD!H_&HBZL,?.>3@]]F>,2"180%!??.&0WN'78(!_BK
MMU)A:9XUIQ$BP.9=;H=CV@4.@%Q@ /,N>O A0SY2B.!41B;@:\^:D<VQRA '
M:Z_&?G9V EH&00E&?S\7KBMD^7T5='_5*<O3*3<^N%\GKT\?;VK=,%XG0W8V
M'9_Q-B\%I">O/%^.AO9D/)O"[3_'\,O\403C%\#CTR_X' X^GL2U23RVN67^
M56GH[OTL/Q\6T)X]_>-@,G#=;/BUL^^?7@17A7/B=(\3_YJ)]G(:OO&YN7H!
M_-!^^;C#N11UUOWKQUSVVN#-R&#TRR=X-^3::/]:Z_Z-\A^N%]./L9WFTX!3
M)L--SG?@G *GMX0E+C>>\!V4\[_^ <O-2Y[\K^<34(/I6^:")V5"- $1+<!<
M>*&09D$@2;PTTN&DG>[+7/Q]9EO0',.3W7@\;J?/FI25P/2W9X//I_*(INWL
MGA;E*\5R"]I\>]-]3ECI7VZP+"^/KY?F@L20+E ,EP30__Y^?7=_<_?-?S2[
MF^]V=O>;=^]W]]ZO;^\W^SL-N(3[X/<UA#4[NPT1/X6?FYW7S?[?-IM+WN*Y
MI[B^L9\_)H;QZYAZIH'@OUF%%H)=']+2K+B7>M?(ZNMQVTP/8_//,\W5S$]:
MFP@4"#< ^)L>^BV-S(T1AG#D4NXP)21%1B674PN$]%X+XDA?&OE=]S:;\]/D
MJ_HXITVA(WC*8?X:"O8$G43;HC@J@S77ND]+6LM>/)[.LPP8?GZ37W='L: R
M6IS3,3$).#>P)7FXO4,*&\$LQT$RWI=8O!Y,P/#\![#[-?QE4@;#<P)/03QO
M;@(%-WNA/R84CRQT<E>Z[^P6*00/SY7J?%;G<\6=3Q4#C=Q:1#VF&>HD9)W7
M*#HK-,,T.L)ZBU7FPM N^?_;WF>RPTEI[J>M[F>1[N?^[OKVWE;G9*Z&_WF/
M.&?U/Y?L?T[/E=>9 YHSJYH/%_\TT_&EWY88$R^*?EV7B4G.^FY>#P"M@.K,
M7MIB/+1H%7;*<$2Q3CGK+\];QF#-N&)6)"FIC_>U9IM=;GE^E_FKE$%F>!@B
M7 KY<$=PO2/V>@2WDD=PUU/BXE'TIM2W;T7AI.4V)8&\IFD^/%V'Y)',,Q,Y
M38:K>Q^CSS?S;CSH!H2,IGG(9*\;^L:7_Q9' =&\V?IS<[O9V-E]]V";^L[+
MW=E=WU](EM>=5_3(LKSNJFU_VOQL_;3)@MV,4W,AZHV=-'O'T>=2MM ,1LU@
M.FDV#KLH^\_57%1S\6!QC/M2X<8(WBVIL*KA-'Q#/.V+"R['T[[^QIW#$T>#
M$(;Q=L&()59X].427T_O2KT?I-[W@KOXVN#N_0)HU[S_LH%!#VXOC\KXJ!&)
MNJLGM,AI&Y!WQ!$CDU=,]H.4<U_\]G@\+QCO:I@W<KN/]F1C'*Z>7J-)]+F>
M>AJ/V_''?)]2CJU?Q:']9'-M\9UBNE7^OI(_DBPF7 443.Y<J25'#N.$J$_:
M&^^BCK@?^=NWG[=.^R_,)S(4%8/AB"IJF+XI"'-+!:@+T7^Z8+_HKGG@/W7*
MJQFW33<8I_D_LW8P"8.N:RGX29<YM4CZG!<TED>A*ZJ^(U1[8$>#_^I^_[D\
M+?DHI73KQ>Z+O1?-:7/MMHKE[U?5?[,]?G&M+"[?R9'+@^EW#0L4Y.0\*NI5
M)Z>/[$M%HPT6(VGSF#>O%#*Y7X<P/F@G9>16]0,RUT-H<YOI^7_>#$:1E $P
M.6GVX@EHO;UI&^/T>?/',!R\:,CS9F\&2V@(QK= G@L5A5M9COL+0\",LMB=
M#3&:1VI$9 .5R"3@+\%:86)[%88-^'&GW1]_*L2)_8<=3@_M4?FGO8M*QB8B
MF4"41>!H:I  T G.<8NB8US@Y'4B_:J#SF'8:=^UXX^#D>^YZ/:NU'V[_N!1
MC/E&?YPV1F(AK348A"I$Q'4DR(!,(,ZL$M0':DR_:N7=>#*UP_\W..[B9T6(
M%*9<L!K *-XU/)6@?*A[/DFEV?P<_2R/EV]V$OA(<5(=]8?A!FSA)N_A[SJC
M]TH>74D7Z"DG7BP&]_A I+%$(!*]SB," /<DH9$&-X@;ZI0W]XZU9["[#LJ@
M'*.D-"D?ZOZ\(*@K@V,!YRXRA#/P?!-XOL+F7IJ:$6NX9^'>-1IYPO7PW>%X
M5%16*Q4 Q0BYB?=/6]%<I'3]SW_Y3#$QOTR:_3B,QYF;I_G6SYNMD1_.<D94
MDW=V9ZL><6)5T?:MYW8W]RZ/NGO-M9^U@^D +FX[&8QM#,WQK)W,<G[A=-S
M%5V4GM"?W,\9J>9*BG4_72LJ_^PAA:6O'#/SH"EF3+^@](8L,TI>,'[#-1R_
MX/S6Q9U]A\9/(Q=7M0Q^\8U^O&7%-I9D6_8'TV&7-QRM/VQ\'@6S\,A2Y<\/
M\*>UG4W?.SF"6_ZT2'>_<N>'N7.6=-]MGOC9'^8IAPW80U@!_.7":#[@"?;7
MX=L+DCT<FSK#]*/)I[TU9U]X1+R2M))T-=,'3@E?4F^+NQX0VASF\ KQP 3B
M*DJD,1;(6A]HI)8X?^] V:D'=$*HZY!2*9Y9+KKNT@3&_J_%Q<WZ6^_S!OR6
MYJ,=SF+S/W)7BUQCWW0#F^I!YEV$/P6&);,!):I2GFL3\EBC@)0*.3DB&A[O
MW5/T%'O.H6<IDK_[Y^9V/1+O,].&:1M3M"@*14$JI$'.8(L$Z$\6%&8T^+[4
MZ.8I1.ZJL+\J)LD NH\ZDOZ$;?\P-MMV$NP_FS^'8V>'S5X<1C]MWMKVKSB]
MPR'ZLMK+%!57W!J%G-X;&W?2^,/H_VI@Y7^!TQ2[5/T<0VPORIA_(C\WAW;2
MI,$PAL8.A_!A[BZ5@Y+_G UR2'(Z;EP\O0#N>1Z59#FMG8@FMP8Z#4Y>BFF>
M26,.6.:/<VN@)G2C5[M+@0H^=MXWH4W7IG/2_ 0W!+EM)C/P[R:'XUQ,?=8O
M9GIHIU\N_I.]NLR\QOF73U_BY^>-'87F)SI_20?2#Y^[_\Q2!M=WE\*7\BI.
M[],-9>X6T2W23J:-P4VP)Y,7G<);3&M,3URD02(:@T$\Q81<SL>S@ECEE#*1
MI'X29S9F;0MO..\@-A\S/;UO?\S^1/<_XF05\-;U8M#[<N[>YKL0*C7-]KA,
M6MG2:%4/Q>YBO+).!W5^-)A.P0!TX*$=CS*T')XT$6#F2;.5<9WU75+7*SNU
M\S9:7]BVBWM</G[;G<&5'(O3QA^S^:S&9@_M-S_E<(/ZA3+ZXO2"Z>%@ BNV
MQ[G_QZ+MW'R]Y^8K3GY>H'$*6CMB.4:$"C!.E JDJ8N(2JP"T399=6\(>U8>
M?<ZKS*I36U6*:%;C5(U3-4[5.-W6.($]L,T07BTVUGLP3CFU('3ZNLUNR;5_
M;4"MH&L_F,!+P(^GGDVV)WY\!%0Y>9[=,+@=N"Z9C ?-03O^-#T\^_@%.&6Q
M6UN(:3#J>G!V:<_S="?_R[>6./\\_')^X2TN^>8BSZ_,[MC9U=]8\?FU@]'<
M!A/J$#US,2_[E2_6'M=&*:HO5%_=L5:T+Q0E+V[*V1'DA;@QKX>_H#?E]; 7
M^-MI/;5+4B&'JI5ZE7J5>H^WO]GC.;N7S ="HD'2>($X]AQ90R7<A4G/N$PX
MW/OX<O.\CW>[ =;W8-R>7'/FU%W4845_>E$YQT]OKL>]RSK^7+K<+=OMO3RF
MLA*Y;VE?_Z:<5UHO/H[SU&W:TL1^^[IP2A7])8E^)7(_E6/?BK(]?IK_D(A^
M:S*&Y8YXC9$RC" > D4V:(N\\"X*[21V]QY$.H?'':/^F$T&HSB9/-B\MA[W
M[KWZEU1KUO?&W[P^8%ZW_6VV/>&:$9$<,@1;Q+FW2,/.1=3&R**0!/1"/]O^
MC$U_=ES:F#/I<6[_QR5F*U[O\P3IUTOF;\\SC)=W/IV^<P[\O!E<?WP]2->E
M577)5. PC<9=+M1L,C]#AC>/0-!PW4#'<=L]:WB2'_YI (^&QS8C6/8X8]6/
M@TGG@(WLR _L,$?>\O"#?/%D:D?!MF'2Y&D'@_"M/@CL)_OSM>? W\I^*DF9
MUN2)'TV>F!S&X?!,?IN?0"J[%(;YO*T;,@-^7LLR\1^PM-(%HPCN?"\?J@_P
MQ;1U.&4GRV@-/I<0R 4;$>-"&XTEIWT=2>QEH5DQS*5NQ%QE"$G591>52Z/Y
M)%[0/5VAY:09SZ:='<L&;?RE3;WH+>7GQ:637%R:FQGL^.DXWXBJYPW%E'7)
MOO?,Y%T:84[W_NLNBQ=>;K[Y1:(J"I6W;S*("Q:1M9PA$XVV.D1"]5?E+3QX
MI4*BB(7 0&'HA*Q1":D0=5!4<DWU->4M'7&[PMV]CBL[%TQYULQ&@_GMWW^8
M\^P9&!0_@'>?_/9L:_OU574!#$9A/$6GESS[78CGFM'GF+"S77KVGF5MTQ=%
MK>:;2N,TD:MS0EZH;S1"68%1WU^1JO>1JY<H=='5[:R1W.E?;TVNY?:&63RQ
M5I0.=]Y?Y M"')Z'88_M09S'$Y!-L.0U._QD3R:_/&M>%I">^F"Q@A64CM[Z
M6W6IMP!&-N9_FO1@&18^F'@U0_KT:6=+ZQM2G#5_06Y*@R8W?"Y?:'G;[H?7
M]\Z_+%H=Q^[7OOU;\5;4W?O,0'?<NY"/1Z19K^55CS2^(:S]I,F\E'8KBYT]
M< -![SI<X('H^<W.C@52>CE3'MZM_[FY"-?TKNMIEIW/\#T;LCK(YZYZ[MWZ
M[GZSU:#'?RRZ-!*_WMI>W][86G_3;&V_WME]N[Z_M;/]D);E";>=K"1]R&H@
MT440>]7.3[7FJE*O4J]2;Q6I5['K@R6S3.-10UY4Z+HXZ'J>)]9-CIVW9?QI
MD+'/X.@TY6S2S$9V%F!-8?&3&RH$JR2MJ'9E;6.E7J5>I=XJ4J^BVF6D:MUX
MML=DWV=[ET^[*?\BI6D)AWVV.6QSMN"_ (6ZDYQ<0?[!V2$ T_AA<ACC]#N=
MLU.Z->NZ9X?HQVW7879M!J_<#@>CV =3-\:9@+GT8N/2:S1_S%^CV>M>H[%=
M2\"]> Q0.V>C,GR:C9K[];V*_O2OI/LK/9<36]%A!=SW(^G2M!VK8+P"HDJ]
M2KU*O0K&*QA?23 ^.8\-?QBG#[E2M/TP&/F51>678MU=UC:\3SR$Z_+TBJT1
MO%\\'TVT#_2('3S?AC4U;\?=9(G-KCC[&SB^0O<*W1\%=.<5NE?X5*E7J5>I
M5Z%[A>ZK MVOHO6N \+A> BH>O(A#S>;GCP2W+YWZ<W.&C\TF]T;5OA>X7LI
M)%V:?A05OE<(5:E7J5>I5^%[A>^K"=^]G1Q^2,/QI]7-@?DBV@XOU+S.+W0.
MTBLTK]#\:4%S5:%YA4>5>I5ZE7H5FE=HOBK0?#2>QLF'Z?C#>7O]2ZDQY>/S
M[;S\W.G__5D]9_,-R'Y=66@%WA5XKSSPUA5X5_!3J5>I5ZE7@7=YP+MK>$(?
M:<.3<Q@-RSRB'XZ"+1\RO[4C>]#AWXO1(J\&$S^;3/+@C1R47A_9X<EDT 6W
M+W!S!M;SN5WYFMTXF0WG\>^=XSA?: 74%5"O/J"FM;ZSHII*O4J]2KV*J$M%
MU.PI(&KVX9]YDNM@"NCR8_P L#/_87CZ>_E0^^^75M^!YK]?K+[#W,/Q9)8G
M *Z[\6S:O+7M7W':[ XF?U4@78'TR@-I5H%T!3.5>I5ZE7H52)<*I/E3 -+\
M0W[K=CR<?#ANQSZ&C#K+Q\\;IXONL/.[\X57<%S!\>J#X]J*I *42KU*O4J]
M"HX+!,?S(8MURN(B:;RS_[?-W3IAL:+:U2=I!:X5/%3J5>I5ZE7@6D!4][%.
M6+P2U24?AO' #N<AW9B+!U<@IOLF+WD>S)TON49S*^Y=_6AN[4Q7@4FE7J5>
MI5X%Q<6"XO4G@8KMAW8P^>M#LGXZ;E< $>=\W^;U?+45#%<P7,%P-:D5D%3J
M5>H]*>I5,%Q;4O2-A3_0#[-1&P\&$X D>>JA'<:N!_-\:LJ'R0H4T;V_] +-
M7GZ!W'/B="C*7O2S=C =Q'F.\/M)S!^>1I<KFJYH^A&@:5G1=$4TE7J5>I5Z
M%4T7BJ:?2#N*$)/-7<_*1\VO3E?:O#\>CP FCP;C]A):KLBX(N.*C*M]K>BD
M4J]2[TE1KR+CVE^B__X20(/X86)3G)Y\"!>=S<H'RF_SI+Z];N&76[)5@%P!
M<@7(U<Q6D%*I5ZGWI*A7 ?*# F3Q% "R^#">'L;VPV"4,O4RC"T?&N_D)3=;
M%TNNH+B"X@J*JVFMP*12KU+O25&O@N('!<7R*8!B^2%^/ARXP2KD4VR>KK1"
MX J!5Q\"JWM#8%A[OL-OS^BSZXC8S:]?C 5 W;V/;<C=8U!6+/.G/5+#>WD7
M]$CA&XS $R;RPQC6QT2]'\"&1:N-A8&="?S53E?C/'SO?*T/ G66CO,KKGE$
MN$9_3SW!?ZT;QN[')R)S#_NJ%P)8A#30+PAQ>&Z<CNU!G.\Z9!,L><T./]F3
MR2_/FI=5.A;[JLT@_/8LG<V4O]UYV&W$QHV'H0\BS=O>-__S7SY33-@OS>NM
M[?7MC:WU-[E-^QGM"ECG-1WCJ^0N7G*[HGKRX4* )U,+?X)'?P?:/:1<;.UO
MOFW(B^;UZ0H+$MEALW=.K,)LU",5W%X,<E_LW]U\]V;KS\WM9F-G]]W.[G*U
MUQEENDWM[!#V2OPP.8RQE'V\L;/]:G-[;_,5D&M[;^?-UJOU??CECX+V\_J;
M*XO)E(0/)^/A(, V#Q^^(FM!2]_>V&SV_K:YN;^W=!%\4(+,+\V/6AM,81W^
MFR3ZZ?W(S@(\/CQO[-%X!DJ[&8R:Z>%X-K&C,'G>Q,\^'D^;R:%M8P,LMS\7
M!4;N[7?0.PI7\P49.J_S;%6G+]'%G^QL.O[%@<,?VVYE@]%!?JU\.1K:D_%L
M"G?^',,O\Z<0C%_@?SW[ KS>T!Y/XMHD'ML6-MP9?3J7?'[O9U]&Y3X.)@,W
M& ZF)VMGW[_NY+9[G%0OL/[73-5K Q?S);V0E-YTS4V?TQ>:J?O>9#D+^4[D
M4UU[*.ZL_^N@A=T4T*E\INZ?Q47R+^\WO3SLKQ<:1JMD[9>LUX3I%T?B:RAP
M(\G5"U&P&9ZO[D[1=["H\<C%MF'X^?*DOD26W+ 3[D[S9:N82NRJ>):N>%Y%
M?ZIW2-4[R]X*%5966/D8R?J@VOW43SZC2-ZF31><:LZT:XG:9EGZGV+*EK<=
MOL.K^2,P*Y);%9,^ 6)7K56RUJ)5:ZW 1OH.HC6W1+0>Z)G\@K)#+Y/?E',H
M\<5&,7<][MK;NWK2=<N-<F^2_P#:7235;Q#XNY*U#[O1%XGOE@?:%]'O4C&T
M(*I72C\:2E>U487YT0ASI70O*/#>V/WIHL"-6=O"3XV=3.)TLE9V\/.)ZO4%
MQ&^>K+9Y\$A9I715&U5M5&&NE'[HH.!E>HE>2\@OY^OF.Z\ 7/PJD_G.@-%.
M#KNQFC[_D$>&?K3#+ZIW:DA@)9S3T;A@HEZ5[X6(\O]8-<=_L17ZMR?HLG3/
MKX//<+/1Z];Z7!S<51>]_J"=,B+X@*2-&'&?!-*18B2BCU1H0VD0SYKN+I^G
MN[GWQL8':7"03DODA7>(\^"1HR8BFDQD)#$K-7G6C.P1T&4V00?6'J]ES;<^
M"OD_FQ=J;WVZ8=OV9# Z^'<[G,5GS6PTF#_E_8?W>Z\ GP'SX2[L61.B'P A
M)K\]0_#;O,;YMV>#ST"AV1$*XZY_1[[BV>^2X>=*F5]?7GWCWY^J-E@!;5J-
MU-,3RVJDJI&ZG9$RVJMHN4'6$HZXT@EIX8!ET@O!C$B"ZB^-E,/&8S!(2'A!
M$!<R(6.$0BDYD6( &\?X,HV4H.PY%[H:J0<P4OV=DE2W>!&[_JUM_XJG1;WG
M W6;PS@,S73<'.7F:8/I28V3%@(_;DW6)ZMP2HYX5HAQ'<1(5& J+4>)!@UP
M@47D,#9(.4NC$X;@Y/KP@_\&2FU__/94I5V,#S\]2KX;N.AZ&J#_BNTX"V7N
ML\5_Z0%8U'U>QCY?-@6K^:EB6<W/0LV/BL8$[#DR08'YL1@\7,X8PD1Y1:7T
MSOL^/-R%F)^O?%N"\7-J^@C UKW^E(Y\B^Y>=>=2$>_GO;[:Z./@8_9RGS>C
M.&W&"?XTB>U'N W\?!ZK? SZ3%(J#$T!,<H3XLQQ9%DP"-:#N= X4H[[@-/K
MP^'X4^Z)]WK<OAK/W#3-AF<$WSVG=\_:[;G&[)NZK021FVN+G&?PJ(3*"B9(
MP@$%*CT8R1"1I18C9IG"/FE&Q%="=1<CN1RA8E*L@E!-?W5M\_+TM\O_OM)H
MJ<G5[UVFR^4V*/FO]'G6>L<17O!C'-XAJ%?/%.N98H%>53TW+,]@2"8UE48@
MHWA '!.-M#$.:2V=D2*I*&TO*.0KX[ =IWV[5/(YJ<>%CVBC+YN"U?Y4L:SV
M9Z'VQV&2*+84&6DMXB0G5V;3HL&3@?^9%.A7]N=.#LL#V!\BGU.NJOU9C9!>
M35=9X&;?&GV$'\;M($ZZ2%X]&2P$0]33@GHR^.@PA /8P*1%%#O  Y$X9!(6
M.4^%8BVCCB[TX<.>*;43@ X]809*R'.F:#T&?#0;>]D4K/:FBF6U-XL]9/,V
M6<,TTE$RQ!G6R&$*+JPF4D9J+0ZF#Y]U$?:&Z>=4]>&CUHW]E-).'J./^JZ-
MQW80FOCY.(XF\)5\%CN>'L:V\5>Z5M4 >"%@HI^XV,W=KI=-]A6@<)\=Q2L@
MN2<@$2HW(3 .21(EXDE*9!WW", (Y5(RPC'MPP$^U9B;<X6Y/@H[65NN=TJR
MWU@ZP\])0:'TVS1=KTJC6KMJ[9ZDX%9K]Y#6#G-.O7 "46G VDFKP/-V'E$A
MJ&31V:2_JD.\B_O]<-:.F.>:56M7BM)8S.%RMYD7X[EWMWY*KOO^>&J']_;2
M:\B_AOP+1"4UY%\>YG!14&N409;DNAKA.-("<Z14(%)[CCF-O:1)+P!=&*6?
M ^*I,?]'L[.73<%J<*I85H.S4(/#F++)*8E8C&!P0M1($RJ14-()@1V8G7[R
MHA=A<(Q^3D@?A3AU9S_<(7.=;O3C?-D>C_Q]!QS5Z/E]C%H=7%<4%*N47C5*
M5[51A?G1"'.E="V-*_WLXET[/@;JG#QOCH<V \=1Z,8<'1_!Y[58KB2U5-W/
M&EAZ;(&E*!-WP20DL<&(4ZZ1]30@J5E,A&A'2"\-7\[4W+NLY-9'8?-,Q?58
MS(#)<UGC3(]HHR^;@M7^5+&L]F>A]H?0Z&-('!F)$^)$861EC,AIJCV/Q"3U
M5:[ZW;+W%FY_B,'/I?IVG].ZT8OR:FLQW4(;ODSMZ&"0YQ/-3T+NZ,G6L&;!
MM03+)NH*T*\BB0=#$D$&ZH-.R,G8#82(2*=<_Z8=$\$Z1>)7 R'NUO;E3+7-
MDR4 0&Q^]L-9&(P._AR/PZ?!<-A7V1MGSQ6M8WD?SX9?-@6K':IB6>W08B.J
MP7L>#$8*9^\T"(P<P1H18S56@>"DO\H-OUL[F(>S0X*!9]M'RGC=\/6\=K4]
MV[.M5:/BA6"(&BRK4?''AB%XDAX<5H:8PRK7ETEDG+/@RY(@I>8FF%YFZ_:,
M$[0TSZFH[4L?SZ9>-@6KK:EB66W-8D]@-0'?TW$4DM'@KSJ*C*42Q6 8)1PG
MXGD?_FK?MD:(YX+4T]85\4GK:>L"-_:KF&+;QM!,[>?:I+0LR% C7C7$_=@@
M@]<R"4X=8E8#9(B4(",P09%;HY6B6!'1AWMZIM>V1GY\%/?MY_-(=V\SA 6O
M8>W'L\F73<%J>ZI85MNS4-M#G0W>Z)1CH7FZ4V1(&T\0UB%*6!0)K)?CU87;
M'LUQM3RKX;S6 ]4%;O.=X]C:Z6!TT RCG<2FTU;-.#6S2:R]/,L"%#545N/?
MCPU01$,I95$A[)- '#.#C-(6$2)( B<7#'8O9ZWG>NY-5G.[^=5VTOO)/'NK
MMYG3^CG6O ;%'\U.7S8%JP&J8ED-T&*;2:=H7 2?-!D)WJGG&KE %'(2$QVL
MI@+K/CS:!S% 5#S'M)[*KHAC6T]E%^G8=K,C1U_V!*W1\4*P1!VH50R%ZT"M
M@O!(9-A;E]/ & :'F"J+K!0429Z':WGO,&>].,07\[,N&B?W=K#+>1]N<)V@
MM3I:8MD4K.:M"FXU;\6;-RE#"$0X9,$T@7F3$3F1AVK @J*54JC8RRB-19HW
M340U;H7HB#H>LG1'?#X>L@='O ;U"P[J5Z2R>,&M2.5!4]UH(%IC@Z(5%G&7
M&&"6E!!1/G*%2="A%T=\83ZX8**HCIA/':I4ZU8R6:MUJ];M"5FWD*ADF'#$
M@C*(ZT"1358BP[QW)EF7S%?]&N\^TG(1UHW*YZ*7).YJW0IQQ*\Y#Z^.>-^.
M>#T&+PJ?+"(*2%_0K'W">)8[@)>"4*Z*_4(D_'^4<HIP/0<J?ND/ORB'M?<6
M'//H<H^N8)"UF"-!F*(Q<*%8+Y.3YOBEKQE)SP7ASTE!/:6_*[9/ K=4JU<R
M6:O5JU:O6KV+TW-N@Y->(V$21QQKBC37&#$IDV-)*J._:OUQ=Z^]/ZM'^7,I
M^I@-6*U>,=[ZO>-^7SKGRU?/-VYO-QZ&'C;WFZWU/[;>;.UO;>XUZ]NOFKW]
MG8U_^]O.FU>;NWO_J]G\^_NM_?^H)P@%#J%?;@%77T0O8S1ZR:5RE=)5;52U
M\82%N5*ZSQ.=BA%_G"\;I]F2PX%U@^%@.HB3M1J_*E"Y+[=-W>-2.24W!*R4
MKFJCJHTG+,R5TK6=8^DY/NO> ZVGD^;8GE@WC#4<4(@2>AP-=<H\S:QMM<H[
MJ4R1XTB80C)(CK@1!!E@$HI*_?_LO7US6\EQ\/M54!L[L:O0\KR_R$FJM%IM
M'CUW+>JNY*3N7ZYYZ9$0DX", RI2/OV= XB2EN"N)/  F .TRTN!! D<].GI
M7_=T3W>0N40IAFEC<6/PGF_LW>-AJXS=U!O>3(GQL5?_"*PG0>G\U)*@1%#Z
M.B@YSAPSQ?5]A@.HP!PX6_I2F&"L$"X)9@<IG]DGE(2=:DU-AD=2)4,]'@\X
MO. F5_*>=CP;\3!H0,J8]R[)B[C+BY"B&(8I@[+]#"0=)$3'#: R18ND2S1;
M7L3]1Q;\=&/;AO4FY%0VU,V*%CKQA_AS@FI)_!F./]9&B:Z&K<$[[(\^!G"&
M:;"":VVUXVBVME;O/[%@3_PQTWH9Q)]Q!+.4NMWC8K\I^.M_4A?=AX?=+*]7
MX6).N^:-^!2T;]9&,H=\BN%\"F^<]TY6U\#W@:V0"B(R#M%RB[PPX>U6.ZA=
M8MKOK[O9'+ON\>(JSN9KN_;XH[U[_+FYVY._P<54NR'Z+Y 5:,,*'%N"!"=2
M2X+3?N&$!DUA$H3P%301;0UX<X;,E9$VV.AY&2+@/3Z<9(V&VVEI>,I6@%*[
M;4?#CU):7F/^_/@;;:HWXF/07AMMJI^:CZ$20XN.@^9*@RJE^AB1.^ I^APX
M^N2VQ@#O6*_<V[6?/IFU85T(5>-;-43/?UKD;2SR8TN0V$-J2>S9*WN2K+2(
MVH'30=7XMC[R*2"@#=X6D4TN?*"RY+VRQ_(I%T.$K[3(*9D[[O#U\6*^ED[?
M4?(%SF>+Y>398H7==#+'%6V6-^),['WR1R--B$<@81H.U)!#PE,R5O(((0<)
M2CK9![8.!$^&V6R9$W&(8/@S*[FVCOLY+^7TU&O3S*[ZN0\*(M*U+%8B'9'N
MG$C'4HPR6A"Y'R.#CD$014/T68M445=#T2%"[P.13DW-(*=YB'2-!.DT$N\
M(_'2=JM5VN]OQ'&AK4#:[S\UIZ,?M*O0<D#NJM,1DX5@1 'C<G35@9 A^"'"
MZ[UM]$LCI](,T8.$EG<;R_O8$B3JD%H2=?;;_$I$E0K+X KZ&K8JVX>Z I!A
MA8]SN;A!LLS[*VUB:LK]$!NYM+P/EU^FV1_??E^>+>9WQ*0[C/^@W?2]]_$_
M[H&AT^HNW_+1+)(TF0TR&V>LS"1I.C77>C[C!RQ8_<8\685WE,YHT!A1Y$D;
M2Z>VL60X<\$6!"M]!E6$@=CG-%#Y7*0HW$0S1#KCQKB]#.\>S?/%ZC4N/]MK
M^A0S#W487TV9I-VFTUGSQY8@H8C4DE"TY]:HR84D..A0ORA>"C@M!+C@+<N)
M%Z%PB!S'@5$DY+1*EU TJL0'1;C[6/>?I486PTW_H W/AD\='%NH(Y ?N1B'
MBW:#Y:I(#]4MT*!"9N"\KN&KYSI':TH(@T2[O])]??@P5[*F#@W0:B<($81.
M4"T)0L-!R)OL/+($H2@$E6R-<YFH0''*Q:0+5W*K6]F (T#V "$^E=26>RP1
M+N5P#Q/A#C<*A/;0:0^]0=^"]M#;\RV*%S+88H"+LMY#[_O2U4<ZH=$I1\W$
MUCF! XT"V8/?,;5Z"+>##$$;AN#8$B0^D5H2G_;;LB7FY)RT8)B5H&QR$&.?
MZ$W(F7*J8!@D]FV!3YI/-?%I+&$Q)7[W: S611:3^9TGXVBOO1%_@]K,-2-A
M:C/7DL_BLE22*ZCNAJ[^!TJ(+C*0&8/.W&8MMD9V[Y0TWG<E6HV7O6MFF_[<
M&\P1XUH6*S&.&'=&C,LV)"$JU)3NYTA'=.!9/Z\SFQ2L%Q57>9"<]/X9Y_@0
MO<V(<8W$Y=1$]0!-5(>*S"D3T' F@+R6_2LN>2V']%J"3$7Y& !+'YDGB>"$
M0##6ZYBCTT$.4LZ]UY/*1DP%&R(LW[N5. N7A0#7LE@)< 2X<P*<#UPQ8<%B
MR:!XC;-C" Y"D9K[G%W68N"VK\.??V9^:HT@P#5B)_:3*Z>8?.B8G%+D[?DI
ME#YH1L+DIS3DIR3ON1;90N(JU:#:)W"2!;#1QF109 Q;Z8-[!N)#%>D)/=5V
M".^$,@;CL0['EB!AC127L-8\UNHU>.4U X<103'4%6M) 5-&.59-L;)#A]\#
M8<UP.?6:BKU:L0[#)<+W/Y)E,%MP/R'?^D/H,,'L';R>Y7K%#W_\6RF.(]<2
M@JDK5&%B$)BWD"-JX;Q*6I<OOHASR17-&7B>!"@?,H0^@^1L0658Y"&85K8%
M'B^NKF:KJ_I--PGS_.F >:IV8_*'?C3QA+,_?E2_._^A3$<[8R2.>T#MM(8;
MM'P4D"1-9H/,QADK,TF:AA(>VWM\L5JDO[]>7-8PK/N7"?[C>K9Z3T,)6[3O
MQ^W9=UI6I^7NB"1I,AMD-LY8F4G2M#%Z=+_P^?)F[&#7>XC3R>]N;M,I9'"X
M](XSY<%K[D&YPL$+KD!9%Y2.,@MOARA,^"C%M9O]/"POEB]6887Y/\/E-3['
MY8O788F_3.[4A_WOU]_J+LJC*UQ6E?QA<7D9EMV'W_Z0^F&?IW[$%S(_=\O!
M%>5,MAQ*5@$4H@:?JT12T5J)8@7&.$0FJQTYL >,WY'^^I5\6 LK<6,DWX3E
MY&TOK.GDE!:B\LJB]!YL/WY!H9404W:0LF9.:8S"; UWNO]"7.M/]^AZ]7JQ
MK)\I_T+QNO63G^O4TV<_[K2Z(@99+4V!:FDDJ,2Q?CC,P+-7PC'GI-BR,O=?
M78-_.-T/JOJ5857-KYO-!YZ$C^(XK?63I?)%LP+9R5S7CW#@1)&0D&D;@_11
M#M*$YBX5>]IUU]^L7GVJM5>QW@OK</ZKGRNHG-%69PZUJ5@."8*HCTH0O4U0
M$G&K(>!0G^OB>M6MPCS/YJ_V\^%2O2IG70+C3;UIIACP*3@PQ:)-S@?#U+[L
MPCYOFN,";40%K/!J[W3Q$#2SD%,,62LT,>A]?:X!;]I\\36&;JRF\%_C<O*G
M#S_Y_.MLK1B3Q7*R^"1*2O0ULK= O3['G+*C,LJ[<"%DBC[GG@]2@,I*@K/5
M6Q8Y<)=]R8;O(0A?1YR[E5.6V;OJO?\O+A>](KX3C*L_-W-^D=8V(8>0<X)J
M2<@9,%P.]:Y(J2%K1%#U(40L#$+F*FJLD1C?Z@QS_PB%D#.^M=U"7=(WB/DD
M<U!]9?MB?I()*,,9S\P*0'0*%!,%0@P,I'/>I^!+=(/XOAL1'CWK\BL! #>1
M>XY0G*J6M8BZ3@J+D%*)W&2G&4M#6.-&A##ZU-.?3VKKG LAI0\2K%4&E*CA
M9U3)@6#128["Y6&&?G^F?0?*.\GDBS"2@<^A@)(J0,S5UBC) L:ZSF+>FO9V
MSW4U^"=S[*2R3J>U='+NC]2IM#X/!RH(UA^ M2!#\+DPA6F8[,R6@NV4O?C:
M9>.19948[],7 52LRR8$M."\*,XF#$8-TJUBZU/MGKNX(UFKI]6>32TSXUHW
MOY:6N%E)J\D+?+/"JXC+B633B6!"KH\[GM*Z2E(HITL$J94%94S50.,-."S>
MZ)*-D&POAGNOZRHHZQ/7U<T+=:$H%R)XM!:2<-73"\C*,,?E][VNM+93<^>D
ME(;7U>U5]$.US9M%Q->+2'PA']@OL7LE!*G$N^'>+,<6Z@CD1[NS!\-?2%&:
M6 ,5AMK5B"QHB)I7!]-QJ8Q54D0_L -VCZW9.Q#13F,56MC$&^+-":HE\68X
MWDBA3?;9U*C",U"9%X@I2;"F""6E<WP[X+]G8#(L;^Z*\6EA-Y@*/-A9M%-L
M4? HYUFOW.%R\B;,<OW8DQ3>S%;ADFJ%&O$.J)Z :H5.S3M@0<BL+ ,4(E32
M)P[.8@#->'(,O;=F*XNV2S3ZR;P]K];MZ?SQQK9]YC0,-5)JJHV="BFI@.AD
M%ORQ)4@<(K4D#NV50PY]$=S7$-.+&J5Z'L$EF0%-?<8BB]H,4K-Z2 ZIRB$S
M1/1*"WX,A:QG';VF='UU?=E7'$X6_9CSNE2OZEN^QGDW>XN3RT5'@YQ:\1]H
M,XQVN7_-?SB6 ?G#*54X:61>)I- <V%!%?3@I/%@M2]2*)7$,$6WGUG=B][H
M/O[<YCZ=5Q.,/U7#^PQ7%^5E>/?UGDU7]:,^^H*+H^14V[N*O<_3(/U2!_>B
M;G\DAA)#B:'$T--G*#)7:8C]GC1GH%+NSXZ)!$9(TS<OM#X.TF;GR R5:BJ]
M(H8>F:&4_6YG_P##<CZ;O]IAOX#R#0WG&VA"YOX5ER9D'M)%R8P+%DP&DX('
MQ56$X+D%7?V-G(3@ <L08?[/N JS.>8G'PSC9\;R!RRS-%L-E+-0IGHCTC:3
ML3CWP9E$NY;%2K0CVIT1[8I#SI1@P*QTH KWX(2MR%-&&QZ+SWZKB?DN ?G!
M:">]G0HKB':-&(WA<OB?2T;TBWFXH/R#O'K9;%[ZG*+TEXM5N-QTJOHP3&_3
MK<W_^<-,/4I/-.+$['UP_=D[,4,I+CDQAW1B@@_>:98@9'3]R/L(7G(.63DA
MLRNI/A@B9/]\X.B3M6D<K*S0.]<WZ6@F97#N;@OQK66Q$M^(;V?$-T1=@^R^
MMY:H7U2Q!6+( H34.C@GV1T]ZW8)TO?)-\ZF]LZ&B,T9B;/@VW"I<0K+]QF6
M7\Y"G%W.5K.^!=H\#QNF4ZYA-+D&\4#T)BHOKN,E-N/('*"PYW>M9"+NO@/D
MY@SGYO0-1+VI$;RQK+HYF+"Z+$X 9Y;7_P5$.TB!_4^?;.JC>=Z;TR.FFJLI
M%[[17,0MA3X+MX=XV+)8B8?$0^+AIVWMXFN4KS5$EQ4HSB5$IC.$HIT3S(=D
M!YDQ<C@>"C4U@W0:)1XVLPU )^SO<6<FE'LXK)-2A=@_LYYXU.@QMJ&$?B<+
M&W,-2=(CEO3-JCZ8G#_=VN,+F@S)J:OWV4KZQBFL_X;J"J\??G,(Q\67KNM;
MU_E]?;3U%>Z4B7F-DY#ZUD=A_GXV?S69+U9].F99?UQCM?IKKY;K!K_+U611
M)JO7V&$?EE49==A;BODZL[@^!EEF\S!/LW7!9?W!57V'[L$^AN[L_&D_=TEW
MNO,#F_>C"4+>$L3KCQ'2F_ *-U:FQN+UDA^&R_\)[[L_?S?YTX%%MH-CO;,\
MM@S&"+4C+B[S$++X^<GSGY[^QY-GD\<7/S^_^/G1RZ<7SP98Q4-=WO'7\'H+
MZW/+][=/]NYOB_*W=2.YO\WFZ=;]7+_4:AGF7;^7]/#ZS1M<IM#AMV[-#27)
MQQ_-^..+9R\N?GKZPZ.73WZ8O'A9__G+DV<O[[KIK7V&%Y.+7UQF?VNV[T9_
M,Q97^-V_C^$C_5AOQU^>__SD_SQY]N+I?SZ9/'U6OW]R=*T_Z.+?_&K_5@_[
M9J>S].LM9/XZ#]>Y'PP]G82KZC:ONNJV5$=E<=V%>>ZF$WR7\,UJ4N_J9#UO
M;U+7;/CC$2S:UW^HX]FX?6P@?M%=WETP:R?^KI*J<+U:W.R!]]=:7=O^@_:_
M#I?A_>)Z55_Y'=;X:?TNG+$'[/<W?Y#ZF>)O.GS8875\JS&YD=@ZAMF\]G>W
MMY;?SKK9.M7P_N'-W]^QQ[QY.\,>6.-^WPOZKA#PPS4]4.I+O_*%Y\T#Z?T]
M7^.4+D/8)B[C6Z7Q&YD,>ZA,QC?LK-N^XO18(<#FS<>X/7.^HOVXWV@.L-_X
M3>7]7[T-/-R-V8>_M?N=>_EZB3CY2_W^=3=Y4C]W_N7 [R:/:7Q,;[=X)\E^
MD?TB^W4H^_5L-O^E^=K,52<;-C8;1CYP X:.1+M_AAPBYTX,^98[)YB0Q(@1
M,*+=*J%3%399K9:MEB"K-9:%1)X5V:BSM%'D69&-(L^*K-:XK!9Y5F-82#0C
MY[@G '_&MSB_QH?4K:#!\SO'G2E_6J=*#J/,)&DR&V0V2)E)TB3IMB5-EH3T
MFR1-#@B9#5)FDO3^1D7Q_?6DYN?6D_KY<I&OTVJ'(<Z'3-&>GM&_OUC/?3[\
M#FTSC]M2AEIBWCT)PT0;=;TA+"*H;!4$KC+PP)WQRELI_59+S"*,T%E#UMJ!
MDMR MSJ!-B(&Y:0NY8YQE>M=^1^7BZO']<7ZB_BOV>KUX^NNRA>73^?I\CK/
MYJ\>=1W6_^>7X=U0HS(4GW)MFAF4<6S;, +;2L@Z/[4D9!&RO@Y9R0I3M B0
MC32@@BD0?+' DY8"O0FYZ"UD*1VEC+J"RJ\G(40(NAA@(J!(&.IG:0A9@O6S
MG89HZWP:MF$$MI60=7YJ2<@B9'T=LDKVF0LLX(RL$5,_?< Y*R&P: NJBJPD
M;B/+)I=8+@Y"D 64EA$<<Q)<M-KFP)1-L1UD*2?ZD82$+$(6(:M=H1*R"%E?
MARRC,QID$@H+"$I&#S%X"UB<<RDZF?+6B-Q@D M3?].I?KX.9E>!IRN\@M4"
M=1)6Z':09;B:&D-1UB&0M9_IN)2)'+!L?O$^7*[>KV?B+E:O<3E9;E8FU:,T
MXH'L8T377:>NCBWV$4AXR)-MY*G<TU/A669O:Z"<G*^^AM<,@@@>>"B><R9B
M5/*VIY*L-\ZB@ZAR]6Z8"M5GJ8Z+8"GF5)B4(;7CJ<@ALI=[-Q\?#P*2 2'R
M$?G.4G&)?(<DGV#%&ZXKP ICE7P*(;)0(&0NZU,J.+,5HT>!PC'MP'N?01E?
MR>>8 ,PV>J.8U"DW1#Y)Y#LK T)EVT?79H(AP7"$,+1)%#0B]V6H%E0."0)#
M"?7'W-G,C#=;.=;$E;5*&[#1]!2M6'2N_J'ATB)6AH;0$ PYYT3#L[(@QY8@
MH8\4E]#7//I8B8EEHZ'RKH!R3D)P7H#VWOHL!'?"WD8?%^B#TAPXKQ&CLJSB
MTN4^(LPER%Q,,+XA]#': FW%@NSG5*G87RY7G%LN]^5B%2YWS]]2!5G#%63D
MO>Q?<<E[.:3W$EP)-BD#11I?/9' (;H<P7/TF#%PANFV]R(SNOJ< ALPU<"=
M,X@F.<A2)5XDUO],0]Y+?P35BV8JS<[=@VFWL?10$MVI&VZS@B8@$A#/"(AH
M."^"*PB!"5"RWY56%D%$Y,$%[8I76VG=E(+- 4$BLZ!8EN"\=" 2#U'*&LRG
MA@J:U@=<U1"[V03$\5B18TN0\$>*2_AK'G_.)=TW9( H0ZPHDPQ<L Q\Y%*P
M:HM1ERW\1>EB5O4V:U;CP5B#0J^S R-1<852!V/;P9]R<LH$X>^\K C%@\=6
M9@(B 7&$0.326RN4 ]2H0+DBP1=NH0BIC*ZA(9-;!UPR%M/W0H*B0HT'4^(0
MHTW BF!:"Y&+::BRJ3^*:ZTB(#9B16B&U7$3N(\7W:K;',5]@\NPJHMN@N_>
MX+PN/!IL10WBJ?Z=)#T>29/9(&4^&64F29.DR9*<@=1)TB<C:7) 2)E/1IE)
MTC38:AP[6)-%F;S9#+BBPPB-62-J6=E&)HWR9,/ER51()GAI(<3(027T$# $
M<,QB],X4E[;J)G<Y2-#;MHOR'XM%[A[-\PM<OITE[%XL+O-@IQW5U,AVTF&T
MS(D^1)\35$NBSW#TD<XHU%(!*[QO*6IB7X)8<9+12),",VF[;'&'JOV]T\>9
MJ>8$G]-9Y<>6(,&'U)+@LU?X^*)L\L8!CZ6O?Q<</+<(T8D:!\4BF-TZ0[U+
MS?S>X2.,GEI'TWI/9YD?6X)$'U)+HL]^Z8,A^Z1JP&-#)8GCE3ZN()A0&-.,
M19NV)O+N4J"^?_IH/>62IAB.J\:<<GC[6>P_8X=AF5ZO"]$SOL7+Q9NK^A05
M<C3B2PS3S_#80AV!_,B7.)@OD6S4F4<+EBD!JC@+P14#// 255$H_)8OL5LW
ML(UQJX[$#Y],VY/-(9O!\GA3;6TSC4MIH1-_B#\GJ);$GP'3>"4D73$#.B$'
MQ8L%)YF''*1+M@C.E1^F^=9!^"/$$ ..::&/>:&?5NTO:6H3\B,D'0Q)'(U)
M!1UHGC(H'36X6 HDK30FSPR76Y.-=FN(M7\D23%5DD*BTUGHQY8@\8?4DOBS
MYY H.6>X@V!EK"PQ!KPO"$YHJV3RU: /U'_J(/QQHIVALJ>\T.F07NL)OA=X
M>3F;OYI.7N$<E^%RG>@+N?[ZK%OU;:?>TH&]5AP+*BB@NJ%3<RP4PZ)CUN"Q
M;VRII(*0O(8<&9-:>ANT&2+7]\'._<?&RE7WXM$O;-RP'H;64V4TE1"=S(H_
MM@0)1*26!**]@JB$S$2,&IB/&903"9P/"%$4A2R%G,OV\8D=DGZ'!9&<&C5$
MJ$LKOHT5?VP)$HA(+0E$^YV%RK.(6DI(2H4:$0D-$4N P**U7#N%=I#9-P<%
M457/J6'MC+NA)4\D(A*=H%H2B88CD>:).=67X&=N0&GOP(<H( >1O7:^:+,5
M$NV2]#LPB<14-S2(^Y27/)WO:SW]UP]YJDNO?M.OXVZ6UZ-F%G,J)FK$KQBF
MQH &XNU?<<<Y$.]8AN</-S?J%!PEX57@6EG@%FO([DW5)!XEJ) "#]5)B&S+
M4=HEB?G]=3>;8]<]7ES%V7QMJ#\9\,>?V^]'RV6H/^V+I[K'K_N'3^>/KJK:
MKR[*K_S)3[,09Y>SU7O^]9Y65_6J/OI2P96:BD$\KKT;PXU+U\!DOU_J]UY4
M^8_$>&(\,9X83XS_&L9'[Q2S4H"W%=4*?08OB@<ELY'&"<=QJ[/X+OGAD3)>
M3"7SA'A"/"&>$-^TA GQA/B[$6^RR-)[!&=]J;B."GPH$>IW6E2":\?"$)GW
MD2)>\JDP0[3E)<83XXGQQ'AB/#'^X%OU4E0\&PF954JK8AU$D1-(;1"S85FS
M/$1-PT@9S_G4L"$&OQ#C]\WX_9RM%OLKKA#G5ESQ<K$*E]66=*MN?:QZ\6:]
M?N>O)K@I:>JH?+,1WVV86B[RW?:ON./TW<;J+C&N,C*L_I%+"52V'J+Q!5QB
MMCA3/:FPM26RZSS5?J##AUK/;JAB3VFFTK4SR&X,_LSX3<0='_!@$OUD<8AV
MI,I$NU'13E9BZ6AC!8B7H*Q2$ ,78*U/5O'@C!CD#/B^:*?<E-EV!N<1[=H]
M\71.#:$)=\U(F'#7$.Z\,XI7>H%1SD#EFZRXRQPTYA*##]Z7[3D'.TZ,W0/N
ME+!3K8>8;4"X&X^)H.#NV,I,M"/:C9!V(<L*-UW HG>@-&/@I>60?31HF?;)
M;W6:W'5"[3YH)]W4JW8ZJ)P[[88[VSY<MO6<DJM/YVEQA9.R7%S=)%87\QT2
MJE0,1\5PC9H8*H8[/2\D%1^4%QYL+GV;T<0@8O4MA.!1V>(E#W&(A.K%3:W)
MQD[^M.@&<T2FCK4S4/#<W9"61^F<TQXS\:X9"1/O&N(=QGJWG9/@4@HUZK8*
MG&8<N&06<\[6(ALBI;H_WFDQ-8,,<R#@C<=('%N"1#=27*);^W1#*[51$KSK
M3Q,)DR ZE!"DC"$SE-(-,I9WCW3K1Q6U,PR1Z$;A' &/=)F UR;PN(XZ2*Z!
MVZ) R5)#,ZD3Y&0%9B\*2WJ().K^@,>MGCI)Q&O%2@QWC)7RJ+O<F8O5:UQ.
M9IMLZA]N#J;^\2$=33VL*U*%V#_S;]_5@(%JQH_N )*D2=(CE319$M)ODC1)
MFBS).*5.DB9)GYJDR9*0?I^HI&G(7>M;7$_G;[%;]0T6/^QS45U)(W9HF"WT
M8PMU!/*CJ;D'2Y%)KXKMQ\,(B:RO"6$0K#']L4.M7.:H^%:'V5TJ_#]9M4V.
M[!FN!DJ1F:DQ[8QKH]5-7EHSDB9-;5!3B4-W=CH/1C/K.$1T_5#2;""@C_61
MLC9GZXH9I/)^?QP24VXM<>AD5O>Q)4C0(;4DZ.RW(%Y)C2HZ2$SVLS%9A8ZL
MT0QCP6!@-EN^/25SAX+X_4&'NRGG%/V<^_*FZ(<T=1R:2B"ZL\^&99'YHH&5
M4*,?7@*X8BT@2Z*(G(5#.T2A^CZC'T^[<",K0:<,WKXR>-4:UG5V,SB)BM,;
M<1V&Z25X;*&.0'XC=!UH7N4 ?DS,,M?_! 0A70VH>>H?*7!.R=B'TYIM]>C>
M+9NXL; ?NI8.Y<,8WTS#TF,;F39G05,E6'.FOFDM'H'\")7GB4IKI'/H)'!?
M9 WY4Z6D#QIL%C%)F8I) R4\]X%**0B5A$I"Y>EH\0CD1Z@\3U3ZS#TSWE54
M1@;*RPB>5P FU-F7XJR)VX,.=TK3[@.5C@_1ON4TC RADE Y?BT>@?P(E>>)
M2NE,D);+&B'V&["I;_$9HP4>"A;)&(]J"Y6[)9+W@DH_1 KY-(S,L5!)!T1;
M3R\_NEI4X?SO>H349%'J HNKR:SKKL,\85W;W8H&2[7B\% Y"Q6KD<.SSVUT
M9UCR(H.P5E3GA7%P+A8H,H18E'0BEOMDG)>O</[P<XM[47ZH]O;I!W/;C\\<
M:E*5'F)+_30,3IO[!%3CW9S9;UJ+1R _PN9Y8C.AY5(J 9:5"$JD#$%Y [9(
M5<F8HB_\/MGG0V*SG6E7QS8XA$W"YOBU> 3R(VR>)S9+<(Y;K-IA944@CZ8^
M$@5$M*%$EK$R]3Z9Z,-ADT^E;6>LR+%-#H&3P#E^+1Z!_ B<YPE.E74J-50#
MF;@#I2I"^_%;P#3C)27GBHKWR4L?%)R&$3C'GZ6F0]#'F-1%9Z$;<7F&J9*A
MF:'[5UR:&7I(3X6;D+-1!K0W!I0+$8+2$= H%6V..=HM3V67(\QK^_AL,5_\
M<G;HT 5U0VR.[]U4;-[@Q$>'MES9>TZQ/H&O&0F?)/AHOV  "H?LI9/"@,E.
M@&+:0G1<@W>)N1@ESVJK(=HNIZ.'HG!7U:$^^N*H NTY 7D$^PL4DK;,#2(S
MD?F,0E+#K<I%:F#9<5">&XA)!Y#%1Y8+4TZ;(<X_'R0DY5/-AM@_/Q\&CM]<
M4%!Z=&TF])TU^B@H':)H.CNGBF;@><B@> 6K9QC 1)Y+B2Z9)(<X7'W8H)2S
MJ73M=/,: Y%'G/6^XVRVV%_66U#6>YWUGD[FN*)#V8TX6\.4WI"SM7_%':>S
M-5;_AFG,17,$+HNO_HTP$(H.8#%E%;AFN#V%9)?4][ZW&,S4#=*>=.]VHAF'
M9OR6XM@2),21XIX1XF@_88@D=[%98S%@DD10(FOPT2 86XJ4J#%F/422^V!;
M"7K*O2/PCF GH>7C/.>T[T^<;D;")\GIL:(Q\QB-,!ZDZ2<S%\<JYI@&Z;C-
MOG@?^=8@J5U2WGO/=MNI$H:0>%:FXM@2),:1XIX1XR@6':*/IA4E%Q/!!UU
M!67 JR)J7%G0*L>-4EM]-'?);1\L%O538VD3> RQZ'!GN8=+8A]?_H<<5[W.
M5D>LZPEO<M>K\ YW:"-.E?$-EP<>6Z@CD-\(^].,U>,0R%3B4D!26?0M83Q$
M925DZZ3@422GMUJ0[C8KNC=H/RVZ[L?EXNIQ?;W9_+IZ'Q<;-V0Q[[Y?6[[-
M[[WL[=Z3=ZMEJ*HQFX?E^Z<KO.JJV])?R7)Q>;EV7#;33X;:).!3(VTS%7AD
M)HA>1*\35$NBUW#TXEFS&OPF<$Z)?H,Z@[><@V#1E!Q$*7R0 \KMTTO9J3)$
MK],Q$\>6(-&+U)+HM=\^UMIRE$Z#,*(_R90S..%[)AENG7%"9QQFHG+K]+)B
MZAHZ_41F@NA%]#I!M21Z#4>OA*G$5 HHZR,HHSS4V,D!,IDTSZ)H(X89<MPZ
MO;@Q4ZX5X>L =F*XP[>4IKQ'FG(5WDW^$'&.]=D_3MXL%V]G755YJO9JQ.&@
M:J]F)$S57E3M]2LGCT1V-5YGD+B2->J/'IP1&JI;E8O%))T,P^5>JV?TH<CK
M^XW=WD-?3=G.%$BJ]3KVN:-C2Y>03$@^(R2/E8+1!L^LLOW1VTHTSA,$'P,X
M+2H;H_(L;M4\[Y[#O0<%?WL'>\J,(/B=E9V@@[5'UV9B'C%OA,QCL@(L8@!T
MLD9^2F;P& (DKX1-H>1HMWI8[I[YW1?S]-2)(7:]B7GCL1/'EB !CA27 -<\
MX# FG8+6X$S0H'*-S2+G'C1W3N>LK-PNS-T].;POP DW]42X9@P%'5$];O+E
M&:X^'$REPK)&_(]]='L7#T1O6?+B.EYB,Q[( 7(EOVMEGL7==X#\D^'\$ZX,
METQJR*5/O>;@(,AH 7U!$8I#Q*U-YYV:+./J4_W:4.5F;LKM$'O-!S >9^&7
M$/E:%BN1C\A'Y/M(/A>*+8P'D$)G4$Y&\ (-1*9Y?::48+<:/NS4[G@/Y%-L
MJM@0)49$OJ9,-)&O,>4E\A'Y3HY\GI>$1B HS71/,828A0#)4*2BN+5%#=+-
M> _D,WU]$9'OW,A'%48-Z#/!D&!X<C ,MIAHI05=1 6;JQST+&D(25D7G/*8
MMGI/[-1I>!\;H-).A6QU?/TYTI!.Y1XW,_LD+.>S^:MN\@:K_%^')3ZD$K'#
M>BA5B/TS__:=^(XJSX_O%Y*DQR9I,ANDS">CS"1IDC19DC.0.DGZ9"1-#@@I
M\\DH,TEZR/,"G\MKO9\\J+'Y(,C>)FQ>_9RVKKX/W2Q1;4DCYH?2:91.HW3:
M#JW<F35!\P L]><)0OWB&$]@;7!*&:TT;IUWW.4\P<U&_W-<ONBW^=?6\Y=I
MM?H0\XM56&%W41Y=X;)JQP^+R\NP[-9_\C'IQCY/NHDOY-S8 RDIX=9,PHW@
MV+)8"8X$1X+CIQF31CEN*]E4"1E4+ 6B0@Y>2$06!9HXR)&#(\+1$AP)C@1'
M@B/!D>#X37!,T0K-E.^CP% )*1SXK&S?!#S)E(V+U@]Q*N%H<.0/!)5J$AP)
MC@1'@B/!\9O@F%GD5A@&TD<&2NH$$8.!&@$J9I(-R;HA3BD<#8[B@7($QV;@
M.-PYA@$SQK</-IQUNOB'V>5U78B3/SQ;K'#"!<TW:<7'V4>/2_)QCMTHEWR<
M_3?DJ5%^8 A9, 4*N0-O=023G#;."LE"W$?J^(,E/5#RN-79*.?HY1 >6Q8K
MX9'P2'C\E#R6:-"D#([;BL=2H>=803!2^BQK.*^&&0]V5#Q:3G@\,SQ2@7X#
M^DS$)&*>'#&+#AQCQ9WCH8"*5H.+V4#1QCJ/00O<2T;Y@,3D#_@0V^9$S*;L
M. 64C2DOX9'P>')X5-Q[YS("AG[>=- >*OD82!-]T<QCQ>8^<LH'Q*-X(#WA
ML1D\TMRRX^:,_VO]>I@GH0HEO,*ZN*^NJCU8-\KK)HOK5;<*\UP7ZPY=\ZAB
M;N_=)ZB;<G-UBB3I1B1-9H.4^624F21-9H/,!BDS2;I129/9(&4^&64F2=.!
MA_8WKW;LCT=)-TJZ-;LA3HFU4TRL12WJC2L:5%+]D$45P#EK@ F5F"D^"+W5
MYF>7@PPWV_F/-KOYSZZO(BXORCI?UEU\VLS?/L2YV?#_/)/&OI!)TWIJC:%<
MVIF9CF-+D*A'JDO4&P7UDN3%E<A!>MN7A@@!@:<(R4:N9"ZFX"#-[0Y,/>6I
MP/+<3 =MB#2@SP1" N$H02B49I[74*XH$4 )Q<#+BC?C;<Y98TENJP7Z+L<.
M#@Q"XPB$YV8ZCBU!HAZI+E%O%-0K*7L>$X?,E0>%2D#,P@+7P085;)06ASA-
M<.CPCQJV-&0ZFAQD1EG:8=O248T.M=YMU@)1>]U3=%Z\MP6Q>A[<I%*=%\\@
MY.+!>A%+BMK&M-5>=\",[0>CN>7#W-=],5.OJ.7\N1F/8TN0N$>J2]P;!?>T
M5RJZ(*!D5[F78X*0>*@8E+'(''W,>H\YVWUQSTXE4\2],S,>QY8@<8]4E[@W
M#NYI[K,H 7+H-YX]:@A"9M#*6YNSEYJ9/:9H]QCOT7#JLS,>QY8@<8]4E[@W
M"NYE8TKR3(-2)M<OLH"3PD-A7F"-W&PP6R,V!DS2[B_>TX-4Z1+WFDG3TF':
MO9J'"=64-=@Z@>K7QU9E1I(FLT%F@Y29)$V2;EO29$E(OTG2Y("0V2!E)DG3
M-(+C[T$]P]5D-D^+*Z3<62/F99@-\&,+M<TQ2<?MUDGYL#M[UGAE4HX!M&,2
M5,D(0;@"KCA76$I,Q*T)@;O4_5=3]W1MZ7Y:=-TO!Q^]^.'C:"/Y>=(+Y)=&
M_[DIMT,<3CR-13\"HTDL.C^U)!81B[Z.12[PBAX> 9G,H)(4$%F,P(T6(=B0
ML]D:Q[=++?X^6*385#%-+"(6$8O:%2JQB%CT=2R2/7*,MB =\Z!$8>"2U.!<
M<D(;#,CS$/7Q^V"1L5-FB$7$(F)1PT(E%A&+OHY%#)/.3*<:U%C33U-($(7I
MNVMF'5001EHY1,WZ7O;HI)T*V4X+CF.O^L;3>??.KIYS.N]B]1J7_43Q^C:O
M<=[-WN*']-[D#Y=U2?UQAYGB5+M!M1LCJBB@VHW3DC29#5+FDU%FDC1)FBS)
M&4B=)'TRDB8'A)3Y9)29)$T-[-O?QOIQL:RO.)^DZ^42Y^G]9+4,\^XRK'>D
M0_[OZVYU57^3TF&-6*=]]&QA#_J6+=WB<I:IV=.>FCW=)>,6TV;'LD-_N+E1
MIY##XT6E:+@!A<&#4BI T$* 43;*Z U7=I Z^W4.XO'G*8A/*;T/AOWQ![O^
MLC?KFXM\-,\O/QGY1Q]M_#-<7927X=W7)P.[^@;UT9<J5*;2M5.X_QO+LIEF
M50>H%J!!-41T(CH1G8C^540WHG@=G0"=/8(RAO4=E#64I(MQWKBLMH?<[G!:
M81Q$7Y_%:Z?,AY!.2">D$]()Z83T;QB*P$,.25@0$@LH%VN0KJ($R[1U-BJ/
M?&N"[RZ'/L:!=%^);HGH1'0B.A&]:0D3T8GH=Q,]%*FT+@5R$?VVNTX0C' @
MM2BF AY1;1WCW.7HS#B(+MU4VG8.AA+2?QWI=);GN%;P\1VG>*@*KA'7ZZO%
M.OH!5VT>$AY*K6GXU8$;+,D0)<NZ^D#9@0HHP0G4X"5R7DKVO&P-O]JE".$.
M1^C;79K?3C?PJ?5#I!L.8$J:\65&8+")@XTI+W&0.'AR'(Q&^"AR!.FQ<M 4
M \[Z C7*]R%:HWD8)'6_?PX*,15RB(B>.-B4P28.-J:\Q$'BX,EQT)><E18)
M-%>5@Q@31*D4%,N#S,I9SK<:2^V2[]X_![6=.C?$ &3B8%,&FSC8F/(2!XF#
M)\?!J!%S5!J\MQ%4J'0+S@C@QF99:GP7@ALB2[Q_#GHW=9KBP78X>)/'K?^&
M^JG7#[]YE7+QI>OZ]0_\R3@,F59=7^$NDGKY&B<A]3T2P_S];/YJ,E^LZA^&
M9?UQ78[UUUXMP^7D35BN)HLR6;W&#ON55V748=\88[ZN$ BK^DV9S<,\S>JO
M=ZOZ@[YRHGOPV4W82=8[:U9C@E:W!/'Z8QG!F_ *-VL:0JF7_#!<_D]XW_WY
MN\F?#BRR'5RJG>6QM41'J!UQ<9F'D,7/3Y[_]/0_GCR;/+[X^?G%SX]>/KUX
M=E?5UY$N;W+TN[3V"SX9E;\MRM^ZU2+]_77]A+CL_H;_N)ZMWM^ZF>O76??*
MZ!']\/K-&URFT.&W.CM#B?'QQ;,?GCQ[\>2'>IN?O;CXZ>D/CU[6;UZ\K/_\
MY<FSER\F=]WSUC[%Q8_UBB\>_S__Y^*G'Y[\_.*?_^F=8-S_>?+D__WKTY?_
MWQ@^P?'5^:"K>O.K_5L]G*WJ=:1?KS3]ZSQ<Y_KV>3H)5]7[7'75 ZC,7UQW
M89Z[Z03?)>R+ E_W_D&%?OAC8[(\**W6'N1=+8K"]6IQXVOWUU+]JO[B^U^'
MR_!^<;VJ+_\.J^.^?BO.V /V^YL_J.IP&=YT^+##ZG55DW<CA76(MWGM[VZ7
M(KZ==;,XNZQ&\.'-W]]1D[AY.VD>:&-_WXONKMCCPS7=\WGW0!EQW_=XP-T]
M7\(^T(HNX]-E^!8N0S_PXK[Z-8@T^#=>QF\4 =MOZY4V[B+@QK99Z4#5,+TM
M?ZNYY5'._MP(Z8MWQ3;LH-F==V:6B)._U.]?=Y,G]3/GR8OJ?.%5Q.5$LNE$
M,"&;/,3U<2.QO5OYA26VZ[W:J;UF<\@82O0[V+;A!=\.,DY/K!^188@8#1'C
M\>+J:C&?O.AWQ@@,C8/AX&/_SEK07]7 G:#0M"Z36$FL9!#&(V(2*XEU/&(]
MJ$$@MXS\7Q+T*0J:S AI]TD*FC:R3UK#SU.L![76M)']M7?MV?4ZR;DH_QJ7
MDS_]^XN^W*RC'>W&";'GFW$UR_D22=!DNEHV7<_#<F.T_C-<7N_0H9!L%MFL
MDQ4TV:PF;=:CG&?]L=1PN3%=S\,LP]/YY'%XTY\8(",VAK5%1HR,6!NWY4A&
M+*7KJ^O+_B#RQHJM6\!/?G'$?_-$WP.>;-H8EAK9-+)I;=R6X]BTGW$59O,;
M@_8D+.>S^2NR7:-84K1C3Y;J?"S5R\7J)GI\\5ECAG_Y8+G6[1G(;C5NMWXC
MQ>N^,L5[L!DW[F#-[+Z]1Y#;\<Y\'R[#/.$DK";_]WJ.]SCD-U3CNSMU]&#W
MYLZ>=E]8%;O*_K@M'H^M\2.0WUXT]5#M%[\DU6-9G+O;+QIM4T$5(9500'%$
MB%$Q0,9T3$GZQ,KM]HLI8HXA9&#)1U#"%0@E2_"J))MD9JCQ=OO%35[_XGK5
MK<(\U]#F%TT7UTUFNL^[+3Y]]N.7V@[KJ55JZKQIIN4B+6V"4#.2;EI3OZ&'
M\*X"/F(/80+4<( *RAMAN =GE 6EM0:OK87HA.8)HU!J&$!]%LIN8MBAVN/K
M(0:YG\:R'X'9)$ 1H A0!*BO!A07TC 6)!1>B:.4#1"S"&!EL3Q:4[%E;@/*
M52XI+>JOBQIZ*64XQ&(8Y*@P:"?J:Y:# 8I/M>%3Z25ABC!%F!J5IA*F#HVI
M8\'G#W>UVQXK,Z5F//,:E@FC?#_\S$&,@D/66I5@6#(>;S,3>1&9:P:.)045
MF0B1>P,F&28*\XX[/20SNZH"]=$7X"GME#M/Y#R</?KCV.P1496TF*AZFL%?
M89BB91F0&P15XS:(PB=@S!;T-9S+8@MD*BO&F=?UU_MIUL9F\%9IB+X$IGCV
MNAQN=[+&GE-NVIE:=NRE/P+329 B2!&D"%+?4..A488:;?FD JA0/$27$7)0
M/B5M@TAB"U*8@T&N(%MC0,D<P+M@@$<6"L^L1E[F@#N4WK*I%U3I<0A,#5 :
M>K#N/Z=8&OH,5Y/9>D!M$TVPR(FXGZ3/UHZ<K:8>RW!LYC,J4F929C*[I*GG
MIJED=DF93T:9R>R2IHY#4\GLDC*?C#*3V25-'8>FDMDE93X992:S2YI*2>#]
MEMPZ;Z(2"-ID#\J& -$(!UDGH[S6.4I_.PG,"^,N,@-<Y0S*B=17-_4',$56
M61;E(K^=!'Z&JZ?KY%7?>G&H_*^;<BL&2/[2PA[SPB8$D::.0U,)07>>E(Q2
M>@P%@LZ\/\I?P.E@P:'2)26KQ/9)29G1848%-F "53BKV$H56U(E7B36_[;J
MD A!HU[8U)KNN!'^TZZ[7O>F6Y2Z&*^N%OT5+=+?^P52ETQ<]4NTRJNK"V!L
M!:+GY$)0I>.8"_+)A;BS&Q##7!V!#-EB (4V51<B,D@J12XET]6]N.U"A,QC
M-@HAR50C7V9]'\ ZD%%+[85&4=2=I<R](<3\P_5R-G_U')>S1=YTL7O\T?Q=
ME+]6YZ*[=R^[(1P+6NYC7NX$)M)4TM019K5(F4F9R>R2IHX['J"N-D.<LW3*
M6\<36%0:E!("G$0&P7*34]+H\U8S "&DC,4BH'$)E*]_[85BX)-(IG@KG!=?
M&9RLI]#^=FPR0,,;SBA6.=P);&IV0T EH(Y/4RF.(64^&64FLTN:.@Y-);-+
MRGPRRDQFES25MH_.9_M(,664+0F<X!&4M I<# $0K1#:J.3S5INN7<KC:/NH
M#5-TK.TCZN]U7*/UY!TNTZQ;U]=M"NL6;_J%T$W"/$_>8K>J:_+CDYNIRAOH
M?/ZU7Y9'' ]/_A(5^C8BOQ'Z2V-U46S!; K34(3N9QWY/EME)61O-6<^)9GE
MWLOOUE^_#QWFQXNK-SCO0G^%]Z[!DV;*_1"-L&GACWGA$Z)(4\>AJ82HNQ"5
MM44K8P 9 @<5*ZQ<5 JB"S(7X:/W:H^(6D?17T&H>YQ$(T2=^<(G1)&FCD-3
M"5%WMN)(T4:3$H@@*Z*82A"#0<C:<>E3",*X?=<)[A518I!9LK3TQ[ST"5*D
MJ:2I(ZQ((64F92:S2YHZ:DTELTO*?#+*3&:7-)6V9/:Z)9.,$8IG"T(F#DH9
M#R$)#9J;K#$F4?C6ELS0M7=[WI)1M"5S@*5/S>N.ZX"]#.\F_S-;O>['T*[+
MZ.:?5]0MZ\/E+*TP?ZB\V[&*CDX=-%<U?[86IV5-I5,'S7L^(H28@PO@DNN;
M5A0.P0L#QKKHDK0JR:VFO#O52ZQ+\IZ'6?YQL:Q6^K\^&>GZ@SW5])FI=)8.
M'!SYP$'+%HI8.C8M'H'\B*7GR5*358XJ"G#K\GC);'U4'"1MLXW<<L6W3O#M
MPM)'^;^ON]55O93N9[P,-9QYN=@%J;MO)] I/H(J0?5TM'@$\B.HGBE432@N
MLZH=FC-06C"HWRKPD7ME%2^>;P6HNU1+'A^J?,JD([ 26 FL)Z/%(Y#?^#1U
M?-4]I,RDS&1V25-'K:ED=DF93T:9R>R2IM(VTOEL(T7I@A6"08RH08E2P+M8
M0$5ILK;!);[5%V*7"D_:1FK+)%&7Q9;DW\ 4XS?7R_Z9U62UF*Q>XR2D?US/
MNMG:5"S*K[5;_/$2WWT_6W3ON^GDZ3P]&%O9_SGY4E2E/N8#*A3"DC*3,I/9
M)4T]'4TELTO*?#+*3&:7-'4D.X=CW:P35LCD@P(;!8*2/$,0Q8*7GF5G=/$\
M[;M#WJ-/^P+?, 7EMP]A"T&'L,]\P1.:2%-)4RDB(&4^'64FLTN:.@Y-);-+
MRGPRRDQFES25-F+VW!>OH-'2 $;-0/$LP9O(H7#NE,_<I1#WW1>/-F)&N^"I
M&]YQW:[ULH+8%QKV15 ?*PTG^*Y_C&.KLSTG=^(TRB]'(+_Q:>KXHCA29E)F
M,KNDJ:/65#*[I,PGH\QD=DE3:?-LKYMGJO @A>9@A!*@0A3@3>+ )/-92=/_
M9.#.52\7CW)>;Y6%R[[7\M/YX_!FM@J7ZQ.'\?:)PY]QL[6&+W#Y=I9PL^OV
M,Z;%J_GZ5=8;< -MNIFIM$/,!253,69305 C325-I5B"E/ETE)G,+FGJ.#25
MS"XI\\DH,YE=TE3:PMEO_5/1WHBLP#BA0<FD(113@.N44!9>ZD\&[AI%6SAD
M*JA]U+$=MI?+,.\N-\52X>/B'%M1ZSFY'\-48\;ZV[C\*(0'^LUJTBTN9WER
MHX/'7A$CD/ 7=/G+,FY0V\<7.>Y]06S>@$E:$F3>VY$TF7<R[V3>R;RWM"0:
M5'@R[Z3+9-[)O)-Y)_/>D*3)O)^H>:<1*<TGN[Q54EJ?(#">004CP&NF(4K4
MCF'T&,OM9!?R(C+7#!Q+"I3A")%[ R89)@KSCCN]E>Q*Z?KJ>CT;Y6+U&I=]
M.FN)KW'>S=[BTWE:7.%/BZ[[<;&L'WO^^'JYQ'EZ_]F._*=LV3-<7927X=W7
MY[>Z^I+UT9<37:Z=%@%CH'B;XWJ)\,WQAPA_HH2G .Y,3?_XET2#"D_FG72Y
M*?-. 5SS 9SPF+)#"X4'#ZK&<A"3DN"X</6YJ#W:VP&<PAP,<@79&E/_)@?P
M+AC@D87",ZO!W':U(@5PIT?Q$0_*I!YQ][@IWX?+]9S,L)J\P#<KO(JXG$@V
MG0@FY-BJV,_))1NFB/J7IDD\$+UMRHOK>(GDE VFS5\CY1;=LK%Z0D$Q%YS6
MU8T)"E1Q KQ(L7>',C=2!.7D;4_(IBQ,U/TQ#RR@- L09:I?HDW:!,>-QZV^
MM?V9C.[B>M6MPKP?[OT+/Z9;/_NY _/TV8]?<%RTGEJKII:99LY9_*;R-N._
MC-]($/(:T.=&D'< ;_QWA,-SP2&*(KGS#*3*#E1D!GQAOKZX<5P5Q8/>VAC8
M"8=]O^G7B\MZ<[LG_[B>K=X/=/!0:T<X)!P2#@F'A$/"X7WWR:75'KT$9FP&
ME4T$)[6OCXIUUJ+W>BLZY-&SXDN"++P I2I"'9<9K!?*VY 9=^%@..13;>Q4
MR';.XA,4"8H$18(B09$RV0,0NH3(:]P9@3/;MTYV!:(K!40R(2<7HY)YJ^^.
ME@9SC6J93P84JDIUKABD)%+*]5GQ*P/@=R3TUR6BE9QJRXG3K5FV'8J)B>'$
M\!%J.C'\; );I50,CM<@-4;7(]"#*U%"MDRK) ,O;FN?ER4O)0\)=/"I;W$7
MP%E$$.AS5,87%]G! EMEU%1*2[BDL):02$@D)!(2[XM$Z9A1+( H)8!RWD/T
MTH,-SFLC==)V:X*U\2R;Z PDG2(HE1-$X2L2BT?)B^RSI@?<Z_7.3;4F*+8#
MQ9N:Y?IOJ)]Z_?!PZ_.33?@&7JW??1 I]!]V_;%OWOG#I?8WX6&X7BUN%*2_
MEMG\57_Q_:_#97B_N%[5EW^'5=O6;\49>\!^?_,'54LOPYL.'W;X)BS#"F^D
ML+9(F]?^[G:M^-M9-XNSR[K@'M[\_1U%XYNWD_:!EOKWO>CN6C ?KNF>S[L'
MPLC[OL<#YN[Y$O:!%'09GR[#J@8NP]27$,>_C&^_*;]Q2L.>4S_JQJ(".@ [
ML*2K7/MG_NT[(;YK[*SFC3I^\;;8O?H9W^C>Q^H2W[JV76[;R]=+Q,E?ZO>O
MN\F3^IGS]FDET>2AVX\.<7NW\@M+;-=[M=-4@^8H,I3H=Z#(\((_S"HX3[%^
M1(8A8C1$C,>+JZO%?++>ER$P- Z&@WNY9RWH3T[N 2S6>4*!Q$IB'8]8R2"0
MYI)82:S',0CDEI'_2X(^14&3&2'M/DE!TT;V26OX>8KUH-::-K*_]JX]NUXG
M.1?E7^-R\J=_W[0<HQWMQ@FQYYMQ-<OY$DG09+I:-EW/PW)CM/XS7%XCV:PQ
M+"6R662SVK@MQ[%9CW*>]<<KPN7&=#T/LPQ/YY/'X<UL57](1FP$:XN,&!FQ
M-F[+D8S8IPD=&RNVGM,Q^<6@CLT3_: .LFEC6&IDT\BFM7%;CF/3?L95F,UO
M#-J3L)S/YJ_(=HUB2=&./5FJ\[%4+Q>KF^CQ\[8 __+!<JV[ Y#=:MQNT5RR
MG9;0/N:2_=_K.=[CD!\U*1I7DZ)C:_P(Y+<73:4&0G<U$'(QRI"X :&5!F5$
M@I!" F<*Y[%HYOO&[[]L((0YZ9B-!)Z<!:6S@RA*!FT4R_4_89D]R"@Q9?34
M\W9FI]#2)@@U(^FF-?6TN^ 1H(8#%%>9:Q$YA.PDJ.@+!*<J>ZQV1<<*HK35
M*WTG0.UON)<F0!&@"%"CTE0"% 'JZP 5,6B99(12007*J0 AJ 0QNFA5]HS;
MK0@J8HS>< <N!%,!91D$532P5'1"E *Y/^2X+2FGU@C"%&&*,#4J325,T0"L
M$3(S*?3(=88LBP>E?"6A"062E+S&<REF*6XST_FDN'$(4I@"RF0/WG+L9VCQ
MY&-![P9EYM<-P))VRGP[ [#.P![1:"NBZOBUF*AZ$B#+F2>N4H28=842RP@Q
M87VD98FZY%0"OPVRDC&R8 NP>H_[6<L!G+<6N!,F21TC.^!(*LG<E$M*H5'H
M1Y :EZ82I A27QEMR5"\RA&T] 94P0!>QQIM&>=X%%X&KK>B+1DR4_VO)Q5K
MM"4]. P:I.-"<1>Y5.J .Y2.Z:DTBC!U $P-4!IZL.X_IU@:^@Q7D]D\+:Z.
MV%* G(C!)'VV=N1L-?58AN.?_^F=8%R1,I,RD]DE33TW326S2\I\,LI,9I<T
M=1R:2F:7E/EDE)G,+FGJ.#25S"XI\\DH,YE=TE1* N\U"<Q$44*Z"-8K 8KQ
M#"$Z ZR89)EDF0N\G026F6/(@8&5DH-R28-'EL$G%WS1EI>$MY/ SW#U=)V\
MZELO#I3_56RJV!"G*&EACWEA$X)(4\>AJ82@.T]*<E9-NC#@(V.@=&(0=.;@
M0@S6H\XJVZV3DBD%FP."1&;[ EL)SDL'(O$0I0S&IT0(.JF%3:WICAOA/^VZ
MZW5OND6IB_'J:M%?T2+]O5\@=<G$5;]$J[RZN@#&5B!Z3BX$53J.N2"?7(B[
M7 @4R%)Q%J3TV#=;0/!<"Q".>UYTM+KXVRZ$,-P9+FH4BZR 2E)"\(Y#4I&+
MH@-*X^XL9>X-(>8?KI>S^:OGN)PM\J:+W>./YN^B_+4Z%]V]>]E)*FP^\^5.
M8")-'8>F4GN%YBE99- >*QMS'UZKE$K?SU6!LLIK4;&7U=:IU $IN1Z'^-N0
MW#T09X3*PQT I%X+A%'"*&'T/#&J$*V-W$!1UH,J?;\^)BM&G3/&1R>,W.KL
MQV.6-F$"*RM_55YG2WD$%8P6SF.0.1-&6S) A-&SP.A7#9,BJ9\'?$G2)&FR
M)*.2.DF:)$V2'I5G/0+Y46A_GJ%]0<UBJ6&Z+CZ \D&"0Q0UM-=1!2&3#5L-
MB'<I1:/0_AQ#>^J@=5Q3]>0=+M.L6U>P;4K7%F_ZA=!-PCQ/WF*WJBOQXY.;
MN<4;U'S^M5^,1QS 3EX2E=(V(K\1>DEC=4R"2YSU;:0Y9[A)P_NL [BD7(D<
M@_)F[P5NZZ_?AP[SX\75&YQWH;_"^T]L]5/.AY@R1 M_S N?$$6:.@Y-)43=
M.9'5173(&'#IUS5E''RQ$3 ZP:N!%\RE?5>7?06ACAM T\(?\\(G1)&FCD-3
M"5%W-[N0,D8F(6)>C]C1$*()8*00WCLA=&'[KMS:*Z+$5(HAIL[1XA_SXB=,
MD::2IE(K/%+FTU%F,KNDJ>/05#*[I,PGH\QD=DE3:5-FKYLR5B>,04:PK#!0
MJ"V$DA2@Q\*]"9ISN>^:.]J4.8G%3RWBCNN"O0SO)O\S6[WNA[VN2^GFGU?5
M+>O#Y2RM,'^HOMNQDH[.&S17+W^V%J=E3:7S!LW[/D&8XM$+\-$[4'V&*01I
M0'$E',^H"M]J);!3S<2Z+.]YF.4?%\MJI?_KDY&N/]A77=]4.DN'#JB? +'T
M9+1X!/(CEIXG2ZU*RIC*11.% !59 F^+AN1BD9IKY\0@]8>/\G]?=ZNK>BG=
MSW@9:CCS<K$+4NDD'T&5H$I0):@25)N%:K&&:>X36"8L*.LYN+[A'1-<8Q;*
MY;"U.;]+Q>3QH<JGS!)8":QG!5;J635.=X8D39)N2])D24B_2=(DZ18DW;1G
M/0+Y4;!_GL%^-#Y[1 3C=0(E5(8@.8,@.//18PWWW1"5>!3LMV62J!]>2_(_
MG!585\1"[-=8/]'UXR*;X+O^,8ZMOOJ<G"$J!A[S20 Z@$7*3,I,9I<T]70T
ME<PN*?/)*#.97=+4D6S]C76WS4<3F= (TMH RF8/7ML(VA3.A=0.S5:]ZCU+
M:UXN'N4\ZZ\A7/:'09[.'X<WLU6X7&^VQ=N;;3_C/ZYG7972"UR^G27<')C]
M&=/BU7S]*NNSLP-MR9DIUXI.R9ZYJ2"HD::2IE(L0<I\.LI,9I<T=1R:2F:7
ME/EDE)G,+FDJ;>'L=0O',9U%Y A<.@]*6 _!"P9.%5FX%99E/W#!%&WAD*F@
M1F?'=MA>+L.\N]P42X6/BW-L);GGY'Z<1J7F".0W/DT=7]1'RDS*3&:7-'74
MFDIFEY3Y9)29S"YIZC@TE<PN*?/)*#.97=+4D>0XZ(3Z  D7S0):5_K^<TF!
M\B5!\#Y ,EP48;5&+VXG7)Q/BAN'((4IH$Q?9VO[G VS//E8T#N_E7!)Z?KJ
M>GTT_6+U&I=]2F6)KW'>S=[BTWE:7.%/BZ[[<;&L'WO^^'JYQ'EZ_]FN\*>,
MS3-<7927X=W7YUBZ^I+UT9>.L+LIIS/L1S_#WK)!(_2.38M'(+_Q:2I%/*3,
M)Z/,9'9)4RGB.9^()V$HB><$6+@%Y3P'+U*$Z&P(Q5JKI=Z*>&3(3'D#*JE8
M(Q[IP6'0(!T7BKO(I5(4\8S=:%'7KI;D?S@[L5Z>8ZL?/B>?:)CRU5A_&Y<?
MA?! OUE-NL7E+$]N5.[8"V $$OZ"+G]9Q@UJ^_C"V;TOB,T;,$E+@LQ[.Y(F
M\T[FG<P[F?>6ED2#"D_FG72Y*?-.9UWOW(ADO$0N+'#4#!2:")%' T*'Z(S@
MQ;FA)P'^ZEG7]1;(4*, F&[FR"HQD!A(#"1=/CX#*<0A\S[2)=&@PI-Y)UTF
M\T[FG<P[F?>&)$WF_43-.^U@W;6#Q:TPHH@,)9L(RJ$$GV5]Y",+)@;G2CE4
MMS;:P3I-NT&-V8[K WX?+L,\X22L)B_PS0JO(BXGDDTG@@DQMO+L<W):AJG)
M_:7Y$0]$;W_RXCI>(KDM@VGSUTB9')?A'!=;8F R.ZA^2W_J.1FH+HN%G NW
MC(O@);_MN%0?)WLE),ALJXO#?00O;0$I4+MLG<M\*_6V;B';75RONE68]V.X
M?^&@=.MG/_=,GC[[\0NNB=93S?W4*--,V?YO*N]9^"B$/$+>R1U5^1WA\%QP
MB#DA=SF#1\% J2(@*&=!:E]O:41T10V"P]4B_?WUXK+>W.[)/ZYGJ_<#!>Q:
M#Q&P$PZ;,M*$0\(AX9!P>' <,NU2U*X 8R:#PI1@3;IHI</B$ UN%6:*X'A4
M*H'348.2OH!S6D-*WB6F/=?%' R'?*H5GPHK"(H$18(B09&@V P4J8?+ (1V
M,EKF0P+N10&5A:J$1@,BE*RBT3GXK<2SC;D&IJQ X5@);5+5OR0#J.1L%DEI
M9^V0A/ZZ%BQ:3X7AQ.G6+!NUIB2&$\.)X2<5V J7Z_^\@(BQ@@]UC6E-ZBD:
MZ\]11B;35KV6*M*H'(%+$?MZ+0'..P'9&"DQJ62=.UA@*Y6KH:TD7%)82T@D
M)!(2"8GW1*+4JE@9 CA,%8FV?Q2D!\S!^,BP_M]M=0/5(7L9&&3IZM\(K<%I
M7EF*A5ED-8Z4@T:27]CK=5)/.?,$Q6:@>%.S7/\-]5.O'QYN?7ZR"=_ J_6[
M#R*%_L.N/_;-.W^XU/XF/ S7J\6-@O37,IN_ZB^^_W6X#.\7UZOZ\N^P:MOZ
MK3AC#]CO;_Z@:NEE>-/APP[?A&58X8T4UA9I\]K?W:X5?SOK9G%V61?<PYN_
MOZ-H?/-VTC[04O^^%]U="^;#-=WS>?= &'G?]WC W#U?PCZ0@B[CTV58U<!E
MF/H2XOB7\>TWY3=.:=C66AC[/5+E"U;6C_18W7F*M0JQ?^;?OA/BN\:.+MX(
MZ8MWQ>[5J?A&7SY6__?6M>URVY[-YCCY2_WV=3=Y4C]RWCZ9))L\@OK1^6WO
M3GYAA>UZJW8ZU]<<,882_0ZF;7C!MT.,TQ/K1V(8 D9#P'B\N+I:S"?K/1@"
M0^-@.'C3D[,6]"<?]P 6ZSRA0&(EL8Y'K&002'-)K"36XQ@$<LO(_R5!GZ*@
MR8R0=I^DH&DC^Z0U_#S%>E!K31O97YWYO%XG.1?E7^-R\J=_W[07HQWMQ@FQ
MYYMQ-<OY$DG09+I:-EW/PW)CM/XS7%XCV:PQ+"6R662SVK@MQ[%9GUK-;TQ7
MWW >GLXG'UK.DQ$;P]HB(T9&K(W;<B0CEM+UU?5E6&'>6+'UI(S)X\55?=?7
M..]F;W'SQ$^+CH+)42PULFEDT]JX+<>Q:3_C*LSF-P;M25C.9_-79+M&L:1H
MQYXLU?E8JI>+U4WT^'D+@'_Y8+G6G0#(;C5NMV@&V4Y+:!\SR'[ ].&@'Z<1
M9.?1E.C86C\"^>U%4ZEAT)T-@UR4J-!"C@%!2>$@.J^ )9N9YMD:'K9:S[(L
M$"T'I@L'E6.!*)D!%T,00;+ZC3C,Z#!MI\:[9EH%T=(F"#4CZ:8U];2[WA&@
MA@.4*P(E+P5<UA$4"@V53QJ4S58E9J0S6TU>=P+4_H9YM3/;\MC+?@1FDP!%
M@") $:"^&E"\Z,#KC0$3BH"*) E>>@G%R5!O%J^PT;<!E1RZ&G#5J*M( RKD
MBC=1 96X0Q5<S#(?#E#]>"T[%88P19@B3(U+4PE3-/!JA,P4RJ=@?0%M4^6?
M2!QB<@YL]#QQGJ/B\38SE?=,68$57"6 XM9 $%X#LPS16:%*8(<?>"755'I%
MY#R</:)15D35\6LQ4?4D0,9<5IS'&KZQP'HH(?B"&K1,L?#@A#9\>]Z&=:IP
M7_'%:L"8>0T8?<S >!"6I>1L/^WQ4".HO&UJLO*QE_X(3"=!BB!%D")(?36D
MHD*=DF6@@Z^1DW,68B@($FLDE2(:D_/6G$3F$RL>02?-06E3*J2TA5*B+IA1
M,*D.N$/I.9M:Q@A3!\#4 .6A!^L =(KEH<]P-9G-T^+JB&T%R(D83-)G:T?.
M5E./93C^^9_>"<85*3,I,YE=TM1STU0RNZ3,)Z/,9'9)4\>AJ61V29E/1IG)
M[)*FCD-3R>R2,I^,,I/9)4VE)/!>D\#HE<.< PB3-*B("9P-"IA(.D47<C1;
M!_U]<<$(JT"9_FB+%/5V^L!!RJ(48]EBS+>3P,]P]72=O.K;+PZ4_S5VRHP>
M(/E+"WO,"YL01)HZ#DTE!-V%(.^Y9R8;8,%5G 05P9=4$12$5\+:K+!LU2%%
MZ6)6]29JEC;8\CH[,!(55RAU,)80=%(+F]K3'3?"?]IUU^O^=(M2%^/5U:*_
MHD7Z>[] ZI*)JWZ)5GEU=0&,K4#TG%P(JG0<<T$^N1!WGK=ADB>%'CBR&L5*
MS<%ABF!=U!ZCD<'9VRX$STP7$20H:ZH+X6L4&W1U.SA33B(OTHAT9RES;P@Q
M_W"]G,U?/<?E;)$W7>P>?S1_%^6OU;GH[MW+CEK8G?MR)S"1IHY#4PE,=X(I
MQRBBQ0HFU[><"[S&J8%!=(RY(%SQ:6M[=4 PK:<0_C:7OCKV+;-WF.%_<;GX
M[M_IQ,VY+W<"$VGJ.#25^OXT3TE,7 ?D EBVK%(2 ]28S0/S%@,S2N>P%;Z5
MX$K01D/R?3-7U!F\,@J40\V%0%1%'XB27]<2B$N"YN'.J%,[( (J 75\FCJ^
M^D529E)F,KNDJ:/65#*[I,PGH\QD=DE3:?OH?+:/LL,@G0M@3410Q5J(169
MCB*@X*F(00H(:?NH#5-TK.TCZH!V7*/UY!TNTZQ;5R!N2@\7;_J%T$W"/$_>
M8K>J:_+3DYOATQOJ?/ZU7Y?=V$K'S\EAHEIH.N1P:H4@O@BEBXK51U$>E)+]
M(0>6@4G)7?'%R[C5;'7P"L7UU^]#A_GQXNH-SKO07^&]RQ0%%U/M/)V"./.5
M3XPB31V'IO[_[+UY<QO)L2_Z53ITC^^Q(U"<VA>-?2(X6GQTWXRD*VGL]_YR
MU"KB& 1H-"")_O2OJK$0(JB-; #=0$[8% DT&MW96;]?9E8NP%%WSM0-/@7G
M)7+*VS(?5Y?FWAQ93$.23!JOMT86MIVL^!T4]8"I%D!1)[[P@:) 4_NAJ4!1
M=U&4XDQPSS"R/ C$L>)(1TJ0U$1H'' TBNXZ4W"W%"6 I$Y]Z0-)@::"IO8P
M)P64&9098!<TM=>:"K +RGPTR@RP"YH*(9F=AF0$#M0)$5"PA);PBD(ZN(2(
M-D9(' 55?M?9=SL.R4@(R>QAZ4.#O\,:8._LI^KC<'911O4VB73CS9RZ:?YU
M.O2S&);I=?=,HX.Z@\[ES9\LXG194Z'NH/.6CY8I"1HY<BIDRR=%BVPR'A'J
M'8]2RGR1K>1+-#EYK^TP/)],,TK__0:D\PL[2NJ39B!I&YV-CP.&H&4%D&G_
MM;@'\@,R/4TR]2*P0#,3&B83XM%;I#$Q2"A-'..>4==*\N%Y^)]Y/;O,EU*_
MB2.;_9EWD_MPZOWC"01(%4@52/5HM+@'\@-2/4U2C8%QP5-6&)FIE%/GD1.,
MH$@D8=%901EK(UVR Z1*!T0I8%9@5F#6H]'B'LBO?YK:O_P>4&909H!=T-1>
M:RK +BCST2@SP"YH*L213B>.A(U4+$2*C(X*<9X8,HIRI'T*-!$I%3%MY'AV
M)(X$<Q</'4>"5HN'1:\O#GN^FD_+.[-J-JEF%[&R_E_S83ULL&*2MELN/A_%
M3[\,)_5U/:A>C/U9WW+^3\F,@A1UJ$XYMNH4BB.-2B=$3'2(:Y4?C:4*"5'X
M&0M.DMMYW\7S&Y#\UE!H_*UB%#+@I(VT3%CL?5[L0$N@J?W05*"E.XLFN;+2
MJ824-YEB@N3($*Q0BIY'Y1UCF.^ZU>(76>G^WG,;<Z%AN?=YN0,Q@:;V0U.!
MF.Z<I>.BXY)0%''$B&=.0<:5C$&G?'3::1UVWF!Q!\0D!ER"UW3J2Q[("305
M-+6'J2B@S*#, +N@J;W65(!=4.:C46: 7=!4",7L-!234I"6"(XP5@)QP0.R
M+C$4"?$V*,J#U+MNK BAF!XO>6BHV),DNO,/>86%N,B0NV-N<3EE7I?YK&6Y
MU_G0:9/S6D4['4_FL^K*7I>DV;YE?I^2A7(<^< ]D!]8*'NS4)A7F'%J$4VR
M;!9%@31V#!G#I=-28,8>--1XFB'OZYEU3];(^&03&)\M</'U A:W#9?OS[?C
M=" I=&PZ]?4/3 6:V@]-!::Z<VYDH$%KBI'"*I6YD1&YE#0R*L5H&8W$;A6P
MM<54C2-]3Z(Z6!8>@$"?00#H"C2U'YH*='4773D7$HO6(24%S=23#-(F.422
MX\I&EQC;:H;[(UEXG:(K-:#4 &6=.!  98&F@J;V,$D$E!F4&6 7-+77F@JP
M"\I\-,H,L N:"@&:G09H");)XAB0LH(CSDU"EBB-DC,L!!Z%#P\:>@P!FI,$
M FA[=UASK%EQR)7>DB5C;]U<LHJ?RN^Q;XG5IV1F0#YPGTL P+L#909E!M@%
M33T>3078!64^&F4&V 5-A:#:;IMB4D)\X@HQ1C#B)"7DI":()F-+A$P$LA54
M>^"TTG>3\Q":\E8[>FV'X<7XB;T:SNRH*2]QMX=,O(F+<MCX-DX_#'U<!.3>
M1#]Y/V[.TL3FVAI%80:$0$?-4\<*8#705-!4<"9 F8]'F0%V05/[H:D NZ#,
M1Z/, +N@J1##V6T,1WLKDQ7(\\@1IUZ7F:$:>9("3XZ18%7+DT(AA@-8 =W.
M#FZQO9O:<3U:I$O9]>KL6[KK*=D?[>1CNGQTG*Z%<":N9E4]&0U#M=+!0Z^(
M'DCX&[K\;1EW4-O[YSKN?$$L6!PS6!( []V1-, [P#O .\![EY9$!Q4>X!UT
M&> =X!W@'>"]0Y(&>#]2>-_M!M.A\/V/JP=U#+M=4G$K"%/(4UM:!&N#7 H.
M*:5M9-PEC=WMW2YN#.:*1A1BLH@3)9&E1B"L<(Q:49XLWMKM\GY^.1_960RO
M9A=Q6O:SIO$BCNOAA_AB[">7\==)73^?3/-MCY_,I],X]M<;$?F;[;*7<?8J
MO;.?OG^#J\ZGS+]]8Z?+#(A2G6D2T <6_UR5=Z*U?P*&!X8_M)[W0,+@P($#
M!TL"X!W@_11U&1RXDW7@#(\<1\61,[&4CUJ.+$\>4<V)4R8Q$>)6NB(V'B<3
MD? B?T;(A(P1"J7D1(HA4LPX.' GP.*'<N"@2]QA$? 7.VK&NMI9]39>S>*E
MB].*X4%%,65]2V,_)9.LG23JSZ&)GM&"36$R=Z,(1EEKVOP]4NZB6=972RA9
M2YCD AF=4BG<D,AF\P<)JY*C,3INMRPAY0.53H@R^C5_1F"+'//YAU->2*N)
M-'%KVGPSM_75?%;/[#@,Q^\_LV/JYMU- ^;%R^??&B@O!DKQ@<*R,W467U7>
MSM@O_0<)H+P.Z'-'*&\/UOA_ !V>"AV2Q"/G/")&DT$\>(JTD1(9XC/#,1^5
MXZW08>DX?3$9Y8=;/_O7?#B[;JGR4 @-= AT"'0(= AT"'3XT+)^232F&*-,
MA!1Q1PRR"C.D==#4<1,H8UOSTYW!R22/ C7Y,QQ+I D+2!G*C;(!$VWW1H=D
M(*0:Y*L$4@12!%($4@12[ PIPDYV&PYKT#(R(Y'23B(N55@TWC$**V.C(S2%
MVPS-!),Q8(.P\?DSD;O,T!PC[ZGW(;^;B;M-AOZ^C6C.!D(1X.FN(=L]DHF!
MPX'#>ZCIP.$GX]@2I[##0B!7HKL\4(ZTS'YN3"%%::.^P['%WC!&K$?"&H]X
M"?%J%2.BT03'I4G:;57P[,RQY9(/&&LC<>N4Z+('0 V4")0(E B4N'=*##1D
M'LL.(97$(>YT0IJ;_!MW*GC-8G);GJ0T.$BG)?+"ER.#1XZ:6$;W1$82LU*3
M/<9ZC=8#(8 4NT.*JYSE_*_-=]W\NK_U>=?=?H.MFN]N10;[O=4;^&LSQ'9O
M:8A;@KA89ZQ?V?=QL:203?F2']O11WM=__RH^NG4M*-9$JMO7EYHN:C'=CZ;
MK,"C7,MP_+Y<>CD<C>SU9#[+I_\4,Q(U7T4P/L-_6'T@/_.1O:KCXSI>V:F=
MQ94,&K9:G/O1[3J"#\-ZZ(:C#,:/5Y^_HZ!@\75,G0DF_E!$=Q>8+J_I@>_K
M,RK90[_C#.L'GD*=,0J7<7,9BG?@,F0^!3W\9?SX0_E*!8\ZI0J>OGJ,X)M_
MGZ2S7,L[?WE$Z:-].XK?J.-=J>,W'XOJDF'FLKMTZ]KN\]A>#L>Q^BW_>5%7
MS_(MA^U"-MH5A__NVL_N/<EOK+#[/JI[#;SH'(FT)?I[D$C[@M_/*CA-L:X9
M0P)A=(@PGDPN+R?CJ@G9 3%TG!CV;N2>M*!O;-P](-9ID@*(%<3:'[$"((#F
M@EA!K(<!!##+P/X%01^CH %&0+N/4M 0R#YJ#3]-L>X5K2&0_=T[G_-FDW.2
M_NRFU4__M>A&!Q'MCC/$CA_&Y3"$401! W1U&;I>V^D"M/YF1_,(F-6'I028
M!9C5C<=R&,PZ#V%8*F_L: %=K^TPH!?CZHF]&L[RBP!B/5A; &( 8MUX+ <"
ML9OA+0L4:T:X5)_-<%F\46:X *;U8:D!I@&F=>.Q' ;3WL29'8Y7@/;,3L?#
M\7O KEXL*8C8 U*=#E*]F\Q6WN-FQXC_7")7TS@"<*OCN-7"R+H'3_OL0L%K
M!T;6/8U^6>A'FD(_ D.$#UXG^W!)?[7]S*&UO@?RVXFF0G^IN_I+49>DI-&@
M0/(/KCE&.EJ-B#08ZQBC)7ZKY6(BV*90)O$HC#B7%MGH'1+>:A,"2]3)O4R:
M8Y0,>"N=I6!I]WEI PGU35.[V201"*I[!"6<44I)B:CQ9=B-#RB3E$'4*\JU
ME@Z'[9[ ]R&HW<U^:V/,S7$L^Q[ )A 4$!00%!#4=Q.44Y;(,HT-ER[TG$:-
MK'4:.1MEXA)'Z\1M@G**1T&=0U32TNB>D4Q0VB*C0I!,:"EPVN<T-D4'C&.@
M*: IH*E>:2K0%,Q'ZR%G!BJ\]LPBHC)=<N,CLME7R_QGI$R"L\3M;<[D/'!&
M-4/>LH"X$!$9;RWBC'DFK,^N7MC_?#0B!]D)!>;<'Q[=8_(9L"JP:L>T&%CU
M*(@L!:$S?244M%.()X&1B4H@Y9)S5/'$Z/8H;J*I9(0@KD0F,AH<TEXR1"DC
M7!H;?&3[<_X,'V )KA^X?D!2_=)4("D@J>\C*1T)-<$21)40B'NFD XQH* L
M89PXS"7=BE &XER*#&$N/.)8*N2HS]X6#ER;&#Q+K7I;WXA0*H$S34&FQSYH
MJH7TT+UU #K&]- 7E_E+9M4D5;.+6-DPN6K6<O[[_.WO)4D4(RP[T2,+[(N'
M2?ID(>9D-?50F/*__]<GB@D'909E!M@%33TU3078!64^&F4&V 5-[4G$#)(E
MVLB %Y:Q8#V2U@G$-;'(N& 0%D:%B#F5P=T.WRDL*-.$H.A-"=\9@QPW% 7'
MF9&".:;I_I,EF!E@U<9>TW%@3C>3)8 Y.X?\G=;B'LBO?YH*#@LH\]$H,\ N
M:&I/'):^^@A46I5P]A&2U11QKQ725E'D9!!44T\"W2I"XA$[)F-V#UB2B%-J
M\F="=AE$](Q(KK*GL+\M?C6@K13*PNKN\^H&'@)-[8>F0N"L\Z2HI?':"XN2
M3PQQ;#FREF?]B9A9$8EE+MTFQ1)/2P(S))+@B',3D%8X4ZHQRG!)M BM)F=_
M7^",DH$F;62_'0?F'"IP!HT3#XM.+^.L&H[]Y/(> W<@O1[2Z_MAUQRQIO8O
MK G*#,H,L N:VFM-!=@%93X:90;8!4WMAZ8"[((R'XTR ^R"IO9#4P%V09F/
M1ID!=D%3>[)GW==MXJB-]U1C9 /1B!.GD6%"(:*PC=AA*PVYO4U,"5?4.(%H
MDV^%A43:1H8HLY1*HJ)UY/8V\<LX>]%L7I7!Q&VE33$UH S:=YWZR@8. DWM
MAZ8"!]W%05)HXAC&*# 5,@?9DK^;2G=($2/1T5.Y5>,78I+12(L2SX=S[PER
M3GF$$\5"4!J2W&K1!1S4[Y4-O;D.Z^._J.MY,[MUDO)JO+R<E"N:^'^6%9+7
MC)N5-9KE5><%T+>,UE.R(8XC#[('\@,;8G]^K$R$Q(21<%P@SKTL,X@<"D$9
M2Q4F+&R-<N5:8B^P1L'C4@,4$G*&)L2L9-CZ),D7^@04((SAZ7PZ'+]_':?#
M25A,>'VRAK]7Z?=L7=0/GO-*!.0]G_AZ!V8"3>V'I@(SW<5,*A&7,'9(2N80
MERY[MQ0SA 4FA,5DH]J:DM B,_W-CN;QZ\1T?^\7VMF<^IH'=@)-[8>F0LUJ
MYZG2D!"3]@0Q)0GBA#MDN;8(8Z.H%4DK+K<&"IG$G2>93W',CI_E&!FO(Q+1
M8:64(\KR/5'E]Y6S@D=WZ$K6+J,4\&G?M+@'\NN?IO8OC1&4&9098!<TM=>:
M"K +RGPTR@RP"YH*T:/3B1X%1T.@42$JG$=<6X6L819Q%IGE3!J+MU+9[Y-&
M"-&C3B 1]$'KDOSWM_B??8I3/ZR;+,1%^N%B1FA=V7&H/L1ZEI?D^LT_NVGU
MTY)S-G^655GW+7W\E,PE2(>&0H=C2P6AS&OFO4"4L3+,R%FDD_0H$,L$)1I3
MC'>>I-C\_,76,3R97%[%<6W+%3XX4Y%J,M#,0"'$B:]\X"C0U'YH*G#471S%
M=-0J<(<2YC'[SHP@0R-'BD7LB'(F<+7K=,7OH*C[YRRV,6<#%GZ?%SY0%&AJ
M/S05*.K.0*]Q29O,2=R$TK.$)6259LC@A#U/SF)K=YTFN%.*H@.E"=#4B2]^
MH"G05-#4'N:D@#*#,@/L@J;V6E,!=D&9CT:9 79!4R$HL].@C+<V"!D)(MPD
MQ)40R"F6D% B8JJCBF3GV7<[#\IP",KL8?%#G[_#FF#O[*?JXW!V4:;Z-KET
MX\VTNFG^=3KTLQB6Z7?W3*6#RH/.9<Z?+.)T65.A\J#SMH](5AFE!"+41\0C
MPTA+DRT:AG%B-.G@MC:D[I4ST>3EO;;#\'PRS2C]]QN0SB_L*+%/LX&44'9P
MZ+*#+D,4D&G?M+@'\@,R/4TR)8I9XQU%(=A4DN0ULJD,!T@N4J\8%R&V0:;G
MX7_F]>PR7TK])HYL]F?>3>[#J0^8'0"D"J0*I'HT6MP#^0&IGB:I&H&-%RZ[
MI-9HQ*7@R+)DD0Q,!&,(IV:+5.^3,MD!4A4#334P*S K,.O1:'$/Y-<_3>U?
MA@\H,R@SP"YH:J\U%6 7E/EHE!E@%S05XDBG$T=2"G-IN4)2:XUX4A0YF12*
MGALJ ]-:A#:R/#L21VJCG=%Q8!)T6^R2_/<' TVZ-7)ED969S^M55L5/Y??8
MM^3]4[*&(-.\SV4FX(2",H,R ^R"IAZ/I@+L@C(?C3(#[(*F]B3VU]=P6XR)
M&*\TTD$WN= ).>(PDM8DPJ2(06TU#']@VM:[R7D(PW(-=E0JC5Z,G]BKX<R.
MFFB;NQUM>Q/_-1_664IOX_3#T,=%-?:;Z"?OQ\U9FL+LMDJPR0 +J,$^=:P
M5@--!4T%9P*4^7B4&6 7-+4?F@JP"\I\-,H,L N:"C&<G<9P,-&,*.^0%5$B
MC@5'1GB)G-:",D<)VX[A/#!E"F(X@!701^_@%MN[J1W7HT6ZE%VOSKYEY9Z2
M_=%.KJ;+1\?I6@AGXFI6U9/1,%0K'3STBNB!A+^AR]^6<0>UO7^NX\X7Q.(+
M,(,E ?#>'4D#O .\ [P#O'=I2710X0'>09<!W@'> =X!WCLD:8#W(X5W:!#0
M^=TN[P4FFA/D-6.(2R61,5*B1!(W@@7&H]GJWLP#9U0SY"T+B L1D?'6(LZ8
M9\+ZH/#V;I?W\\MYTQG@U>PB3LM^UC1>Q'$]_!!?C/WD,OXZJ>OGDVF^[?&3
M^70:Q_YZ(R)_LUWV,LY>I7?VT_=O<-7YE/FW;^QT,3U@JCN#$_I X]"M$B@>
M*+X3$@8/#CPX6!( [P#OIZC+X,&=K <74[!:>(>$XKR,L,N:I#1&PFKE#?-)
MJZU1 2X0YU)D"'/A$<=2(4=]]N!PX-K$X%D"#^XD:!SZQ'5)_OO#DE_LR(Y]
MK.RL>ANO9O'2Q6G%\*"BF-*^);*?DDW63AKUY]!$SVC!IC"9NU$$JZPU;?X>
M*7?1+NNK*:2PM8$ZBQ2G*ALSCB+G)479H/'&:DF2H+=-H11D,)PRQ()RB!/C
MD&$J(4:CT$%I'<B6*;28Z_MJ/JMG=ER:VSYX:*\0 T',0'+9F4J+KRIO9^R7
M_H,$4%X']+DCE+<':_P_@ Y/A0ZE-XH)YA#!@B#.J"W4)A'/7"B,(D8DU@H=
MEI[3I<U[G-;/_C4?SJY;JCT4H@UG'NBP4R -= AT"'0(=+AW.DR4*4I29C6N
M\P_##'+:,(1)5$H(8CG9\@ZIU<1Q[I$63F0*-0EI+03*_J3V6!@BDMP;'9*!
MX&1 %052!%($4@12!%+L#"G"5G8;#&V]%%(DE+0UB./(D4["(JX8UB8Z3B6_
MS=#*A>R8XOP94MHG2Y_US[/\&:]5H)X+K52;#/U].]%"#*@DP--=0[9[9!,#
MAP.']U#3@<-/QK$-@D0<240Q18JXX XY%B@2CK(H5)*Q4."M##">F.3!(<*H
M*WE?%&FC*0I2,A8]]TKKO3FVC.OLVC*@2W!K@1*!$H$2@1(?2(D64\O**!T2
MG4(\LOSXF(Z("!L=RYZD$N(V)6IA@V$6H\!T]A^I$$@+PI"+":N(LQ_)6O4D
MOQ'KU4P,"&YCHC608KO]6?._-M]U\^O^UN===_L-MFJ^NQ49[/=6;^#O9&_V
MH7!Z;VF\NXB5]65TN!U?#\?OJ_%DEC]HI_GEC*[YL/=3.ZJN['1635(UNXAU
M+$ :RG3Q,G-\W)0XE#*1*@W'=NR'^?!ZEE]H>EV?@: 7@I:W!'&QKH.XLN_C
M JB13?F2']O11WM=__RH^@DPI]/:X;(ET(8LWCQ[_>N+OSY[63UY]>;UJS?G
M[UZ\>GEPR32FU<U"_L<D_</;^N(?:33Y6'=#;D]>O7SZ[.7;9T^SX%Z^??7K
MBZ?G[_(?;]_E?^[:*#G09?[V[.6[M]6KY]63\[?_73W_]=7?WQ[\Z>Y5,(M#
MRU<]+F,.AO[+^UN_C^T\Y*\/@\I>9JMV5F<2RK0SF==V'.H_'4QP!\?&Q@A=
M??/R0LM%/;;SV61EKI=KR2Q>+KT<CD;V>C*?Y=-_BMGV;[Z*8'R&_[#Z0'[R
M(WM5Q\=US!R?%_M*!HU_N#CWH]N5>Q^&]= -1]G]>;SZ_!TE?(NO4^*,_*$(
M[B[G97E%9U)_ZY!OO*_/,'W@*=@9V?M5?*4L4GUG6>2#2\J_MRQ2E8+60RVE
MQ9?O,Q375JG^Z8HV"[*\\Y='\E''.B*LI+3'![,+WKW_DWLY',?JM_SG15T]
MR[<=_NRFV=OXK#2XD]TMUH&G+C[- RPT()!#HQP0R.X)A *!=(Q **8,"*('
M!+'WWFHG+VQ K2ZCUCV:W0!J=<FLA791W[U0[KLE_L36%U43YJ_2=')93:[B
MU,[*YF#)2?@PG UC_1C2R Z>1O9=3 -2[USR'D@:)-TM20.2@'X?J:3;F[*^
M*:]B\K9G6F[NYI8S]\#4;"VA]V6<5<.FG7 GPA<GNT[VT2&Y6^[43M3Y'D4'
MA]5B*"BXJZ" \2"IUAB5<G/$8XC(2I)0X$Y1)9RF.FS5V#FF7>#Y(0KL$7?1
M(R."1I)%3GADPLJM@H*,?C>]U%NJ)9!J@&5WVJ(?>M'W #2!GH">@)Z GKZ;
MGD1R@5F6"48YCKA*"AG#)9)&1:FBM9S[V_048I+12(L2MPIQ[PER3GF$$\5"
M4!J2W&KUN0MZ(DP-*,/ 3WLL87OX/@HXO[M8W3<S<NIJ-JFF,;_EAZ-8C==>
M<7F]_%5J+ZJKZ>3#,,10N6O8E>FHD0*QU$Z9AB!ID'1/)0U( OI]I)+>S:Y,
MXRSNQC)M3GU*ING3F,_OA\THQ\J.0RG'S-+Z=_-"WZ((Q[5XP"ONA/P@WK6W
M>)=B3B@=)5(I4,2E-L@&'Q'F)% AC"-"M[$=LPEZY^-PO@%Y;<VXP0/#V^CH
M#\N\S\L<" DTM1^:"H1T%R$9CH-E B.1F$/<$HRL<1HY)UV@F'B:3!L;,+LG
M)"8'$D.V0']W8\#I;7$_9F-]E79W(;I9-:SK>3,\W4_J60UQH^Y:&NUT/CUF
M".JRIH*E<9>EX92VDO-L-9@4$=<^&QDAX&QSN.S%*A6,BVVXOIO0]RH]7[3R
M'+]_4C"OM2;'3'6GZS\L<R"DSD@:-+6#F@J$=.>8<<$<H4:@: LA16V0*:-D
MK,.4:4^2"*VXOOLA)-E&(B(L<]CO[;OKVXRV0,XNNKI?7L5Q#5N]'3<O(.0&
MD?5C,R^PE@+;,JR=\H1XD EI;"C25C#*I=.2;XUMOX^_^_;"3N,O!>Z>;*!=
M6X:%&1 ")0ZGOL*!BT!3^Z&IP$5W<5'$-$:G Q(QLPGG*3\:2BA*)/F HY;!
M;PTHOX^KNU,NHF2 !0<NZH>7"QN\.\YJ3G$ZS2[NJKC.?HKUH!38]2TX>4JV
M!<37((S^)54]%)+\\:X!8WTU=++/G301%D7*77:@E2TCY5DV(KCDS":O#&DG
MOWH!OXNF N_LIV>?BKD3?XGCF*_S^RV>.NM#_NT;IH\9*"$AOG_G2MF)=OVI
M;]@$+-HW+>Z!_'K(HGTE+H8YQYFT4"")(HX#1UI:D_UN1;2P2>'DVLG#;HFX
MOK$?K6@;M4&PTF$_NN^>^I/\VW#\/O_1#!D?AJ;;#>Q'=]G"@ @A[ & G[[+
M#0G%5(PI()HD1CQQDLT=%Q&A+II@?)*TE;:TO\SKX3C6]9/)I1N.&]R]P>,G
MFW!\/IW:_&K3PNS)1?GUQ?B\&=S]*GWA([\.[6)X-&G;WV=D0&4;#O]Q %DW
M'7Z@X\[12:>UN ?R SH^43JV.B85"/(Q_^"&"V1#$$B*Z!CGEI'$VH@^])2.
M"1E(#)D'AZ9CR$KH>JSCY62,FOZ^P\(.L;[_1!S83>G<;D"G,:D'\@/CZC2-
M*Z:4H2$DI&3BB&,GD8TQ(.R)4)1%HN*#8AW3; D]SLA;@/?%$G<7VSMM)5X.
M,(5R]T-;/UU&(>#+OFEQ#^370[[L*T4Y'YD4CB+:M"45-/OR.BJDG-.&LF!-
M$ _Q_]NFJ#3\E GTWW$Z*7KXB6+"?P:"@G0#<,'_Z]7L(D[[%B(^)?OA.&*
M/9 ?V _[LQ\HX39$B[#V"7%KB^,J',(LA("CY3*VDG;?@-O:CBCVPS)]L>V(
MOY8$POTGOM2!E$!3^Z&I0$IWD1+7.$5G(U+6:<2924@GK)#TWGBB&?&VE?YN
M>R,E"IU8^N+DPC[S;G/JFXR0NAJ.-Z?'UG6<U<V(K]$R%618:N+C)S^:AW+$
M\#)?VZST0[?^7_-A/2Q+"&;-=L P@0F1G3('0=(@Z9Y*&I $]/M();VCS1>Q
M.[M4G)A=>NY]25&NJVGT<?C!NM$]4A\AZM6YJ,W)NL)=UE2(>MW=2()@08-$
M1 F&N(T"6:D]HEJ8Y(AW4;=26?EB[/.SKN/3N/CWQ7@%?F_6V-?ZKLR $9CP
M=^KK'A@*-+4?F@K)^9VGRYA<2#%@9!7&I=N203I%BP)C0D5F/:$/RGS<#5U^
M@R4E-L"2QUFL",YZ:X_MQ?A#_F4R'4:8A=MA$PB2LOL<@04G_2ZKPQ/NA<O&
M R8N()ZT1*7O$;+&)^:(BLELS6-HQTG? +W6TU/$P*@V# ]8\7U>\<!-H*G]
MT%1PSSM/E"H83T+DB(N8W7-)$C*<)^2,L=PEHJUMI2UR2T3Y57Z4?,"P!G[L
MOV,.N^@[A8+7TWAEAZ&*BS3J14KGI&19+W,\^Q8'/B63Z#BBACV0'YA$IVD2
M148L3]D&PE@DQ&G22!.%LUTD8J11.D?\;F('2UQ>C9!85KF<CT-3 7/>0'-;
M R3P0+$V>@X=!QQUL^<0D&KG2*'36MP#^?605'O+8\HER[A&F#J&N+$&.4\=
M(@Q[I86SB<;=N/;M\MAWMA"6;7C^@ ,'JMT$[[Z]!D7K@LU168Y5 VJE)G.>
M_[BO?P];'IT+V9\L!'594\$4N;-]$5.8&$R0%$8CGA1%)GF'*.::$Z."(_K!
M'7I7=DA8VR%K)/RU_/VFW.FK]'NV1 H(MFZ X '%T,7WU $ J HTM1^:"J'H
MSO.F)]:HI"F*/!,A9P9G%UY;% 4N3GS0R:@'MPW>&6]^/9F-#G K >CC "'8
MK =W_BO]AF%?OO/&$(0.80L!C*$=&D,D82=8B$AH4_;EO4'.2(>BTR3D/YV0
M6ZF*[>S+-Q"\-HI:W8=76,&V!6S" X,>C1;W0'[ H*?)H$JD0 )EB!(C$<^_
M(L-8YE).-9%*F<Q&N\D(V"&#4@,;_X=F4$@*Z'H48=TX[\I>WZ]K'FRK=&Y;
MH--8U /Y@1UTFG904"I001C2WA;KQS)D$_?(<8:#C,1ZLS6XHMT6?J\7*-Q^
M_SY)H$' H:VA+J,3\&C?M+@'\@,>/4T>%=ZE9(-!1A%<*N4L<J%,)8R66T&H
MYVRKRTZ[O?UVQ*,$#PCE0*3]#RM <L*NPPK3>;SI)-"WH/4IF4/'$>+L@?S
M'#I-<XA+9P)5!"5M".*!*&0DYL@K9JAFSA"VH\8!2QC^]68J7^N]!_6 FC8L
MHN- H6Z&%HZ82P^UTJM3U7#@62C@VZ V81FVA=584N5'0M81AIA2TG%GJ;([
MRAQX"+5]E='8 '-H@ ,M \"-WVX9L#'>N6]AXU/RZ(\CNM@#^?70T@"/OI6^
M!9RGR#@*)$K$9?YAHL4H8LDE%TP'+W=4<O!9">;*^KENVZU7 ZDD['-TVJL'
M/NT<'W1:BWL@OQ[R:5\IC.,@-,D4YJW,=$0E0Y80A9Q41EG"0W [VJ-_,(5]
M/2 M!T2T43L'BWX/_CMLP^]TZ?\Z&;]'&2<O'^:Y'_'^0<<LC7:"ABX?':=K
M(9QEM:_JR6@8JI4*'C,L[4>7ORUCL%;:LU88$3$(IY"2I2ZQ&!V&*)=M$,&)
M(<(FNLL:_Y>3L9]/I_D*V]]O:&5RW\YQ8_$%F %R  MV1]+ @L""$ ,_4 #!
M:F99%"AIIA'G.&L2CP9YHQ,A)D43M[+:6FP:\$!*_KXP.%,4R+D'@?+=9!)0
MO+-(1'/JPS^A_6'(N\G,CBIOZXOJ:CKY, PQ5.ZZFJP3#,KJ^@"9!1VWS-H)
MBH)EMGM=[J=EUE=C*!&+5?#9DI$J&T/,<F0QBR@PYR0S@EA'VHA/O(RS)QE#
M7R\A])?KW^L8-K94SM<HVE)T0O.!%MUIQ]P'(ZC_V $\>'!M!AX$'NPA#SII
M-,:4(R*515Q'46;DJLPGW%&EN<^_M!$4V#L/DF:,#P$B[ AXM)=[T)Z#WP-_
MWDU&H87%7]9>E4:3CW65II/+:CC^$.M;;OQCV&$YN/V2Y5K>^<LC^@BD?GBK
M$20-DNZII %)0+^/5-*[V3S:71;KJ26QGOM_S8?UL+A;]: :QV9F=;.39,L[
MTQ@@4M9=I((T^F[$P;H8Y8(\G!9";I8S:Q0FR&)K$"<T(F>E1C013Y+ 0?&M
MD-M]MIY>V^O+?!WUN\GY G9_F=?#<:SK6+^,LU>IQ 26[X2V:GG40+?2B^,X
M0 C*4(%*^Z_%/9!?#ZFTK^Q%I:0.XX@HX9F)$D_(!1M0P(XR+J(5-K:Q8;1[
M]DK#3S&@?\?II&CH)XH)_QFHJU=;0>"_[V+AOYY.?(QAN564U\M\.IQ=%R<^
MW\ _XZPT:J_JZ,O+PWS&BS@*U6RR/A*B8]TU2:#)79_CN&"2W#D%2A)A%#5(
M<U[:-6N*-.$6,2=D4B0XGEJ9 K7"Q><9%M]F^^)\''Y;0MZK]-\9!-]-5G^_
M7:-C6^DLF X8A3:7IXX P%6@J?W05."JN[A*DN"=R;ZOM0XC+KA&CHOR@SB:
M!/&XG<G->^2J'?G1L/IA'[S??O1Y"(M-\.(<>WLUG.5K_'?,CV.29A_M-.9U
M7L^@?++#)@@$\R""#YOA.VW,3+ 6@F6/7=CLNTN.#.,*)6E2%$I$N5U_TLIF
M^-LE!K>U\SU0#/HOP\8WT.;Q:'$/Y >T>9JT6>86<,$I(B81Q F3R!(KD# R
M.FX#CFFK?4$KN_"MTZ:0&FCSP+0)&_+=#B2\GD_]A:WSL9-4NC%=95%=#ZJK
MD1W/*CL.5<QK\ZHLU+X%B4_)*(* )FQG@%&T0Z,(\T1,8 )QZQ/BR@=DJ-.(
M<4H5-4)C'W822WB]A.37!9#/Q^'9"H[;LI+$@# !>RJ=CBX D7:."#JMQ3V0
M'Q#I:1)I=+0$$"P*5L4RO($AC85#GF"EI"P=$EOI%+UW(I5\P P&(NU_O $2
M%_80;RCAAF%^<32*?C:WHW7LH6\1[5.RCHXC%-H#^?70.NJK0<*B)219AV0J
M69,V.>08\\B+%*Q+41AK=^+9OQC/[/C]T(WB>5W'6;<R)&&E]WFE R>!IO9#
M4\%C[SQ!ZF )2YPAP4- /#J++'$:"<Q]HCZ2@'>3#] .06XYZEP,LEB!(_OO
MJ$-BP [!H!FL=F<SY[Y%A4_)&MKY>+FE'AX:M7H@89A%T2$CQEF%A66Q;#:8
M4AN9D)$\(D:)9\ICI1UNT\M_/IENEDDV8/IBA:7W&4CQ?3,J:1M#*7:.(2<Q
ME (8$1@1=!D8L:N,R%/ 3K!,;-QKQ(.(R#%K,\^1Q*-B1LFMSC8/<>L/Q(BL
M.UORI\Z(,)BYZS[_%P8S_W%>YU^&XS^U% Z S9'.!??!^('1E"=D_,04\E=+
MAK!W!G',.-).>J1EP*P80#:Q'8YH?I#=\_7-#3F0K9@\,)FR/]@!/'AP;08>
M/&D>A$2#-DB9)>*U)XA82A#7G""''49&8F4<,]+Q5A(-=D'*WQ>,((0,#.U.
M4X(^T'/_\Q/:"TX<7OZ'&BJ=AF,[]C!4NFL6%XR"[92="Y(&2?=4TH DH-]'
M*FFH2>WVMM?G0ZGBISCUPT6%:CV;^']6DZNFU38$^+H+5\>1B]\#^?6P"JBO
M\3#+$^8N""1QZ5^=M$>:8XJ<(-Z8$BQ3NO794P7P7BWP[MD2"-N:X,P$=+$^
M]94.G 2:V@]-!4ZZBY.$%HX88U!(FB)N.$=.*E[J**@5SJ?@VLD:W1,GT8'2
M'%BI']F?4.^Y2R=XD:==O-Z9_51]',XN+B:C4+9<)BY?K6U0(/]OE0&:#YSF
M7Z=#/RMSI\HBA3!3=ZV1XV@KUP/Y]= :@?25%DPC;Y/$AFNDF$N(,\60H<P@
M'+7"0DK+?6JSQ/1-'-F,O.\F[^RGO]^@]?/)].V%G<9?;+:2GDPNK^*X;K"[
MK6G1=$!4&RDLQP%(T# ::+7_6MP#^0&MGB:MRN 2QR)SHB(:<9P(TL$F1"A-
M6CB';6RU3O50M"H&FAJ@U?YG?<)6_0XQXDV\NHE3/)F,&U&Y4:S>QO%P,JU>
M3F90D=IE>PD"I; I O;2#NTEX["PQ&*D/4V($^N03L:7'1K-2;:EO*-MA"'6
M2%R_2AM _#2ZMB9J, 8;,YV.,@!K=@[U.ZW%/9 ?L.9ILJ9GS MI+9+&6\0C
M%4B+X)!+3LO N4QRJS_D?:(,NV=-TIWRTD/C38^#")#JL)]4AVBGX\E\5E9V
M/0QQVH3T^A;%/B5+Z#C"FSV0'UA"IVD)B42UYMGYQS%EJ\;YB$RV?Y#6V28(
M2KAH6XD?+$'X^62:[:"24);_>+*)PK\.K1N.AK/KYZO:_]:[9:D!-9#*<&AS
M:3^NVZ&E^X,\>CX=9HD#>P)[[HL]^TI8P2M.;<I>N]*9?)0CR'),$.6*FZB\
M4CRTF""P3\+:T7!'0 &HV.^Y!_]9Q?ZPKN=YP345^WYR>3D9+\H1!M4XSOH6
M+#XE9Q[:<G9&PM"6$P("=]M7U'MAN))(2ZP1YSHBRR)#5DHJI;<XA-AV&X(7
M2T0OFR0%SYL2T-:[<78GOP :<1XZ/ !D?7!-![(^:;+N*S\2FQG%<H8(-Z5M
MM6;(>9&0C(Y+G)Q@=(L?']H2X8'\N(<8P^GP8L?C$'=D$L#(K)V,S%I.R;JS
M5W7?0LVG9-CL?+K?R1LV;>ER/PT;B$*T8&4E[8VE0:,4M47<"HF,2 Y)3I.A
MP262^ XG=CUH2^<[PQ%F0&0;'1)WCF>=,;VZ&9( YNX<KP!S W,#<Q^&N96U
M)GH3453$(<YY0M9JDHD<6V-XC!S+'8[UV@=SLP&6;6PF '/WH#3CP5':'D[U
M:NVA/$LI^D7EQ2=_8<?O8S6ULU@M?J]+?\DFEF+'8?%+_-=\^"$OSO$,VCIT
MV!*#S:'.2!@L,;#$[K;$.+%*2861]2(B'G!$+OB(B'08&^NP"[:-&,H"Y%^E
M9TN(?Y,1_M6X&&?E_\]N$/W-NG]P>>-\'#Y_8>/(%V,_FI<^7$^']=6DMJ._
MYL5QE3^1_RX7/!S/8WAUM<S$;=W"XP-CNC.\ @P\R!8!@P , C (P"!XD$%@
M@]0FRH"P8 9QC34RS/),[MY12Y4.J970S/$9!$0,I"1@$?3 (H!![H=%S)=Q
M5@W'/@NLCM4?\PIJ?OM3R91I,=0#FVZ=VQ("RPXVW4XH#U@0J[S "8F432C.
M@D&."HR2LLQ@+IU(6W7(]XFN/,AL>AVGPTEXL83CITLP7AM3FP;:PFAKJRL9
M5@-&VS"83F>/K/\ !&1Z<&T&,CUI,H4P21L9+,'2)*A"43N'.&8".9F9G1%&
M5"#&.T':")-TE=F_+R3"\( +8/@3"8E %LP#'DI9NH.MH$<3"=D8J>J;HUS,
M=S1>#ER]:A8Y['MUUZ"#?:_.2/@H#;J^VE"<.J(29T@D)Q!/F"/'B$.*,VJQ
M4]*F+1O*8>-Q,A$)+PCB0B9DC% HY5.D&"+%C+=J0[44[!"495.H.WW8^V *
M]1]/@!L/KLW C<"-/>1&%[FDV#,4B<[<:)Q!AFF/I.6*.FVCC'J+&P-Q+D6&
M,!<><2P5<K2,+L&!:Q.#9ZG=^$)+W"@Q&VC"@1L[@B>0'7'X4,"=*1"#*N97
M'^#SPR9.Y[88?@")Z!DM4!0F\S+=MBN6S1X"EO_1E2V>NY\ V#WMV3V8,APL
MX2@&DA!WPB!KLB'C91!!,A5T4K?M'FEPD$Y+Y(4OU<3!9[O'1$23B8PD9J4F
MG;1[&!XHU9T![U_5]9.P?( ]^S^)!#@3./.T.-.39!-7#)D0#>+&&U3&>B.A
MA#6"*I=)YC9G:F&#81:CP$KO+"K*<%/"D(L)JXBU4JS=+,.VXNB*#5AG&VN<
M(F="XL!AHP5OYU=7HUC&$-E1%8:U'TWJ^;09?)(7"&IB",/QA[PNF_:CXW!G
M,]+'L$ER\&!"EFMYYR^/Z".0^N%#."!ID'2O'"O #]#J(Y7T;IK>P_"]MHS0
M\[J.)5O59X=O&D/V];)75$T6M?;9T!R5Q',HX>TP6D'P#8)O$'S[\> ;2UI@
M03!B/@G$E8Q()RM1&4",E9'4R%::T+\I-_,J_5['!FM?N9D=CDLSVU45S_/)
M]-4*;W\M<+N>/=Q6O>Z 4-BLZD[@#9@3-JN +X$O^\67A&+,D]+(\Z01QXJ7
M;:N B+,:1V<M,Z*-PMG#\R45 X4%$&9G"+.]G:K#!Q%: Y<N11&>V^&T^F!'
M\V;WZIC:!5"?X4YP@T3&.,1%*FV6G4'61IJH\,Q+OX5ZU)K\7T"&6((X90P9
MKQ*BR9/D#+.QE !\CGJ_S.N,<G5]7@(Q];!<0=F#GUV_*+05ZUE=QH3&\&K:
MC O-:__E_-+%Z:OT]L+F]Q?O?@: =?/&)O*]>/G\6W7_9,#)EZ&O"[JV@(G%
MS15M\\W0U'Q5$__/:MB(H=QC-;N(B[#60IKYT#^[:?73\O-?^OE\%#_],IS4
MU_6@>C'V9Q ][F[D:Q=%(V#)'[I #2SY77-:\"%(FPS2F%C$F</(1L:1UYI:
M:ASF:KM3\#TXK1EDO2 FTE86V8#+-BSS/4#'25CF0(6'#&4! 0(! @'>PZFS
MTA 2(I*AU&BK,CM'&HVPIXI*KYRS6]U=B;%>4!<09MXC3I)"5F*.M A">4,#
M5[Y] DS#3S&@?\?II*#$)XH)_QGHKS/T=TS9+1"8ZA6&,<VEXLPB&JU#7+.$
MG)599[BA+"K"A-OJP21(T%0KAX*/*7\F>:3+!W4DGBMMJ=.RHX$I3@?R*RVG
MNZ!K/Q*8.B_)^R$N8TS?$9=:C$%YG[^I/-,Z?W8Q#*6*=CJ>S&>PS]S=.!7L
M.,..,YCI]V@I(!2S. J4)-.(<XR14]P@K[22S*A@6'H(Q4TSG#XN%L+?BH'P
M*CU98^R338A]MD#8^DT<V5D,[R8;5-A26$L-*&1H=<BN!^:$#"W@2^#+?O&E
M848ZYQ/R6N#2@B<B;8Q"D3O"M<7)^ZUV EY1*3,S(I:,1]R'S+'<2B1#(B0)
MG"+#!^?+'47!@"W;C8+E?XO_W_RZOR5\U]U^@\::[VY%!O>Z5?JM;__RS=Y@
M9)L1CWO+XUV38^,GE_EBKDNYV'@RRQ^TT_QR1J5\V/NI'557=CHK$9'91:QC
M : LHKH,1<BP4=IS%IA8-3?(A]>S_$+IBU"?[2*^<^^[K1[ZX.^MXQU[[.J6
M("[6P>\K^SXNL!39E"_YL1U]M-?USX^JGP 6.JT=;C(*;<CBS;/7O[[XZ[.7
MU9-7;UZ_>G/^[L6KEP>73&,@-=CTC]GD'VND^<<-TG1#>"]?O7OVMGKW*@OO
MY=-G+]\^>UI^>_OJUQ=/S]\]:P$,V[K0I]7S%R_/7SYY<?YK]?9=OK;?GKU\
M]_;@S[D3LOGC[V,[#_G+PI\.)I#_F=>S8;K^40#\IF7R(P 8AA^VK<]O2G7M
MW+R<7\;IT"]]F\2(9%QZ1&(JOHUSR'DA$3.&.>^)B)RV4:WY-DMOF+*5/YZ=
M9\-FWG@XK[.1XH>Q?I?/_<MHXO_YJ(K9;[DJ3W(ZC_F2-^[U\V<;AO75R%X_
M3J/XZ?,GNWQ$*RDV1Z ,2-/9S\TS1/E17=:/G:WC:#B.6T_[YEFP,\;8'[[C
M\1]D0=PMC^&XW!1JQ/(#7_$5H6W)X]%_D;7]N/%\%L<0C/]PZV(Z(:W2%NPR
M/^KK8B]O*&-UHXW52AUO[-%\>ZN?K:XZ(QR.R5LD#<NKCGF'+$MY+4DJ391.
M!MU*C?0OMA[6K]+K:?8/QK,FBG ^#O=<BW=F/FRND>\ WF\CX0]C[X[5:7%H
M^:K'PUF^$/]%!6N$7=1K4]R;?GT; I3WE]\N\D<>Y.'^@,.:?=XRHS._>Q&G
M<3BN+NR'6+D8QU6^T.P'YW?<=?4F7N5;S2\^F4RO)LN=_#^6Q(!%>,O__&3A
M4R_^##\/UF^L/KK]SF0^7;U83:;KES_&U:M_RE?7N.O3D"\\5A^'LXLJGRIF
M'WUT7=Z)5^7&[ W47$WS#0VO1L6I7[V=3U*N]/=Q,7&JM^7>Z^J/JZ_[Z_GY
MZYLO+%T+K^;3>EX@;#9I/CB=-Z=KYB.^GX^:FZ^7X8%;9WT;_7S:M#ELCE]5
M@&:Q75X.Z[J1VNJ+WSY[LO[>09-H\7_GF1?B=-3(>S+-3R<?_SRK1D4P^K_-
M&<]+1&\4\POE MZLKZ=ZB_[?YH P*3&-U6.MLJ!65SH<+T*4Y>BF.>-D,BLN
MQD8KQSK?X;*O3G[H13)GU;L?C8%4]<5D/LIGR)*+MA%__LS_S,>+T&_S$)M:
MIX7-^1TG+%=[1]1F5E0V/Z.U"B\?]&>J:'ZNJ_/Q>)[/N!#JIDS_GW5^2QJ6
MN&YU'>VTC+[()WL:?2QY014C@XIB2@=57L;^HOIHZWSX*!^ROI7\*)O31C>=
M%RHL!^>/L)N'O?[&]2,_ P3[,H(ML,<NZ^"^A%Q%=8I.#V?7BV=1-':EPG65
MO\2^;PXN*_G2_C-6I3?I9;-2&YVJZ_GEU6(YSR[LK++-;.+%HF^4I8#+9<&6
M9KW;9>^I_-'1LH1[M=(_;X>ZD?STI<\LOJ4H_6I]?E'UOW0YT_@ACN?+"XB?
MKLKZK*N0 2@OD9L/-;#8C'&IF]5<N66&W.)S^5HGE]F RNLS3DOI>A9FEMY\
MU'PP32>7U?O)AS@=EPM"6::+A;K8Q&B>0C[Z*O\:5WCYY-7?7CQ%Q%19FT+,
MYQXLEVC3"#8#4CUW=7Y(13P?['1HE_?3K*3S-V_1D\G?$,U"G$[&]L-P.F_0
MFO&?5R=N_LB8^7XT<5E<[^/D:E+D6E9P48EL3)01-G7I5WM=90@NJG*1OSGF
M9Y+?\)-Z5E2L;I[72L3E)LO5Q48)UE>4 7U:KO0BJWG!T"7>QG&^LDDCE++T
M?;:A)MD2K?^ST$?^LKH1NYUE/,]2RG]G!<QX7,\S@MQHX>5D6O W9:,Q"[P(
M,-^#+Y@>SQH+>EJ$-KH>%'D7#%L\F3K?0H'8\LF,4,U#FEU,Z@T%[VXD&L#N
MX>;:LEC8K[%@@_<:A1[FES]>3+*9A"8?Q_EL9<T-PS OMZP;575>EN&&MU:V
M/J9^=8+5B9NE,;7C>K7:;ZS#[./G>[)+^^KFPO-AH'J]4;V5RC38-"XDF=6@
MJ-S";JU7)I7-2)H59<7'1;LVM6?3 %_Y^@VA?HS3M7VYT)3RT;4Q=%:]6)Q_
M<C4<+\^]H<F#M9JO+;_Y>,-L_.%54^#=AN+O-J\/%JG)BW[E^:LGXTP7"P$/
M,M(6Y&\HZ^83U3A;A75=;+QB.=HJE7S]JPV_="6>F^NXFBP+^FVS4M\6IV1A
M6.*%E3AH/K!"]G(=5\O,A'IMG\XNIG%!5>/,W9DWQK.+>FFI;I^Q.;#8K#?#
MW=)H\O'!I^O4PEX8,U\76P-KP\N5_;-Z4L5^F<;&45H]T/S-^>C0*/F'N#"O
M%F?.I)Q=F6)?^=E&1GP^3;8R&X^APX#WTV=1LIW$W+3S6&4?!QGM'.(L.F0D
M\PB'Y"BUS&.W/4#T'C&W?"$;4;5L>TV*R=HLRR;&=KWX"7&V^\;9WL2R+;49
MN'T[*^;^-"^<WZ\*O-; I7>+[N]Q7>6RR9>++E\+@RQ3F&^22@H)?4W&2V?G
M_.WOS;^+T-CBA7KA^12'X\Y QX]DJE3G7Z2C)K"RX.YL$VR0>[V^UGQ1Y7H*
M2^:S%>Q<U OEUQ?^4P'1#5=T,[ZRL P:!Z:Q)^V-V;'X[*W[^\\?NK%R"1L1
MK;-OH^&=KRXW!+^PS:!D9,PEE*_7(!XX15IYA:AR6?VMXC;A-B!OG;OX].:&
M6MS3:\!LE]MZ+:S1WN_IT3[NZ35EJ(WF5;]%6_2N65MW[=\=FE4[Q0.;/M6\
M1.-*?&LRKYN2WF7H_>IJ.K'^8N%<A9B1+Y]MC9.?U?\6O^#N .+"^%U]5;R\
M&DVN\T'5Q3#;P%-_L?!/AN.K>?[L?.E[73:/L@GKW7Q-@\:7]E-VY_^]"*J7
MXQM[VM5Q^J%DR*Y.5"ZB7.S6H?/Q]L'N>AF*7=Q;_I8[CHF+B_MX$;-D/MCA
MJ+Q[5KW:_NKI^M?E%4__&6=-IF;V-Z^:&.*"4\HE#<OVU="OI-K(L!##2H+7
M5<&S4(AF>:),*#9?X*)WYR*B5D_F4]\\IA"O8J/%MQS4L^KW.V[\]J5.8T:(
M95AYB[(W8]#63>:SI=_2WITVD>[BAL</<91]I'!S[^43+M:SS_>&5H]AY?S[
MX=3/+POW^Y7B;>C/C<8-\_.<3OZ9GV28?&RR:2=+1W-4OKK^_'L7TFVT?"FV
MXK:-BIOZN+O^U&'S01\L@_OF2]W*)"YU"HV&W ']=CZ;K&H,RK5ES2PW5@Y'
MF>>RAB_*(WY>?(\19YD$E\?G^QO9JSH^KA?;/VMKHRE[69QZV:-BLX/%AV$]
M7"C[X]49UH=M5E0L69>>,6$*-=^47=QQF%9GDI-;AZW[9]S50:-Y]'=][X[F
M$':Q%.E@J_37 C$5J="=9370;/>0S^9O*^-G@P+FXT58-?_UK_FD_%-H;&$4
MV87[N""^13!O6$35;/ M[:$-BEM'FS<W0<J.6T.(2Q:<-8YLK.\>#=3:PGYP
M*2(L[#L7-KW?PH9F17M?V)^OYK)VZ^POC.ST"RMW:[T/[CC%S?+_UOEVN[R!
MMW>SO!GP=D^6]Z9G6KS*SSS_XFIN[@LO$X)6F34;7N/E353I[I;E&TMV5:9[
M*L5X)>0</S4[UON\YX[5;.K;+N?WEFV>C)K\=*>>P&[<HLI[$<5:&/]W!C,S
M0I7P['5)J5Q&SU;1VMGUU:(EWLT&TQ?#L N(RY)H\DQ7;LA-O'>X 9Z7DU#B
M8#>1V36,CDH^YL8UYD-NQ52;TRY,I$5>S"IT?),E>P.O-SFP)<'P?^;A?8.T
M)=UFF>59LD)*+N1&M+&)Q)9,V04V?P;7]CK_F2&\">HMT@[+_2X#>ZL,UCNB
M@LUW-EF/RR\LYMP=^W:;&;17\^G59'UUS7>L!'!GX+'D_N;W%^G9MX[:()KR
M*'S^NO>3:5:O\-F3:;YH\K'$0E??=S5?/L]A_0!2Z\2":#T'[L ;-KO+@7AB
MZXM!57Y6I6MH?J[K-.S?FK77K,:-,H__CJ-FT?QF9^6EZTU)MYIF8U/R3B>+
M%"W]G&GIYRR,1T82+B2+AIFM9CD_LN?<-,LI-U[^OW'OY^-P<^<W-U[N^]UD
M==?ORIN[S;PY)G):[',T>S:+,'I30KG>5-O(>VC4L4G@B[?4\?)&'>L;=;Q8
MJN/E\L$LDPX[A49?2##<*KBI_K@J=FC /Q-S/JS^T^,MP[#%W0A\S]V([]^/
MN&.K@<LSS=GM'8F[MB[.E.;?<]QW'&/.!.9FX[^6S@O7>*S7N!%$^T8#^5LG
MW%W'OKT&SMKP]N[=@!)$N@,'^K9PLRC+NW]Y1/BCW4OZ\T9\^*STX6MR&^]J
M-KF2U-Z:\NVB1<U]6_E]*57UL"OE*\]OW4:Q>T]P_[WFNTD=\&1 V <1]IID
M*'!,ESCFLM3*_SN&S>DF3R;U[ M;RL RW5Q>@&6 9=UY-(?!LK].)W6]P+'?
MQUG6HQM<^ZL=C@'1>K7( -$ T;KS:#J':+_F=[Z4]P>0ULU5!I &D-:=1W,8
M2'NV;-6UA+&;DEN LIZLKF]$-3_/*S^5[9L#5:PW*3OK;D<;R1*/83OMX-MI
M^R">+E95'%#V(.\CDS< "0#)42HVR!N !( $%!ODW3-Y Y  D!RE8H.\=Q'A
M>G#OA*[ SL$*9]8QKLO).%ZO&L.E+.-[;G\=S2/I(AI]MW!_8%K[7?LI!Q?^
MY^MA-ZK_'X=5\!_:U>H,9_R W ^&:<M:U^?3Q8B19;&K8S%PC@.BTBC$50A(
MAV20-RS(*)/#R=TN=HU<2<$90T;%@#@F$6E#)3*1YG\%I12[SXI=GT8W^U)!
MZ_DX%+1=_K-9#KM*$VU20Q]5\_%P<0&__^/WMT^S,9AU)W\!>U2%Z(=92/5?
M'J'\UZ*_YE\>#3]EZ<TO49C,T/*(1_\E&1XH95:=J%?"^*^. L]Z'_#@T-,7
MB ?^[* : W\"?W:S*=JB/33OZL(!_ ?\[Y!P ?\!_P'_ ?\[#%& _QU48\!_
MP/\CC9])I;A/)* 0C40\$H-TXJ[$PHC @=% ^6'B9^NL]_5L,XBA'3F'[B!-
M?E-0#^OX?0<#GW;3[W>369G__*5T>D@YZ9RA]-W"_0&LHF>T@%68S$MC13"5
M]J?BW_,<P%AJTUBREF,L/$>,1(.X,!I9ZC1R*AM*$B?EXO8T5ZNUMME."KYL
M4-KHD,8I(NH#IYAAKS4]B<W&/8#/"9E*P*+=%RZP*+ HA)R!!3H/5, "G51D
M8 %@ 6 !8 %@ 6"!PXL?6*"S+-#?B!I/PGF:.)(D4<05Y<@P3E$(4JAH V>1
M'2:BUI/M1V#276Y  L7"D)K^6BU[+3WOG:!!=T&DW1<IP 'H+H@41 IP +H+
M(@61 AR [H)(.S@E\J3D#R+=&QS#@.%.S>)8#!A^&OUROC!IY@O3+NU;P22.
M?C$'/!D0-HQ[ HK9FB]<+>8]E9(.X)<^+2Q ,4"Q[CR:SLWAA,G"O5MD@&B
M:-UY-)U#-)@LW+]5!I &D-:=1P.3A0'*.M(RZ?Z/+POU\)LV,%88-M$.P3I=
M+ SJ=<D<R+M3\@8@ 2 Y2L4&>0.0 )" 8H.\>R9O !( DJ-4;)!W)\<*]S&\
M!3.%CYH&'BY<F(D",U%V0A@_(/>.-2726CK'F4>4,(&X**--G(_(*<8UDRIQ
MO353F%LK!*<"88L)XB%II*UE2!(JHA+>1)DZVN9;4#;@0L,\E,ZU(P+^[+YP
M@3^!/W?"GSUM[0KXWSF( OSOH!H#_@/^ _X#_@/^ _X#_@/^'U'\3'".D_42
M12DCXE009)DFR,DD!'<F2B,.$S_;65-OB*%UE4,[/5/X]H[B4G@P4!@&"O?"
M2OINX7X5J XNVKY(L8=I(_VU8G@@1I"8;1?+.>*2Z&+ )!2]HEP1QA0UMZT8
M&G0@P7)$'/.(LQ20)1:CH#4FP@:&C3^)74  ABX!P\'E"-P%*MH_[NII!!84
MNTN*?7 Y O:"B@+V O:>H&(?7(Z O:"B_</>_L9LDDJ2"UP"+BXA'IU"SGF&
ME%#!1J("$?XP,9N>[#P!.$!=6J_:+OW6E*'9,JBX7J_)ZB(ORFHVJ2Z7R_*>
M/9@@PV9/A<IM";J+;-I%&Q#DW4]Y Y  D!RE8H.\ 4@ 2$"Q0=X]DS< "0#)
M42HVR!M:C'<N0_KWL[=GU2Q+K)Y/KRLW'(WJ:K%AR7ZNZHO)=(:RIE["KEOG
M8*F=P'H/ZLGZ(F>H&>O4SIW2U"M&+%+2!L2QE,@%FG]SB>(8([$VW=ZY8\D(
MQA)&1FB!N.0:.>4%PA%+3Z-*R7<UVYI@/*#&=&K7#NK%@"/[(5S@R$XH,7#D
M?CE28I.2\A*98#(S)FV1X2(BK)4UBD7M)-XI1S83$&]F'Y8YKBWQ(>5 A2>*
M(@>7(U A*/%I4N%))]D#Q@/&]T.X@/&=4.)^8GQ_W9UHE%6.$,1I:<#@?$G,
MQPD1SA)UV0<B3NW4W=E9SGZ)_C'*P.7I')+L(*\?ND7M!C1NND4-MEI%+>;4
MW%4: -DRG;.#=M'MCI[1 F!A,B^/OS.6T,DUV[S[.8"=U*:=9'70G%&-L K9
M3@I4(JV-1]%%EA@6PF_;29S'Z)75* AN$;?9RG(I,<2,=R';2M$*WM&M4TG9
M0 G5X5:;MY3^A,PG8-'N"Q=8%%@46'1[Z!M5) K#$3&,((YQ1$;ZA+ I#0*$
MB93NED5[L+D*9-E!/ >R[*0B UD"61[G]BNP0 >!"EB@DXH,+  L<+0N$XN:
M<"<M,H)F]T?1_ ")CX@Q9KT7DD1.'^PRG7^PPU'9Q'D^F;[-SL^-^[2S[=DF
MPJ@).$T=I,O;&[0G57?:11*%%+$]-1( 08,6@W!/5;@ $:#%(%P0+D#$X04-
MP@7A]E.X !&@Q;T6[F;X)_]>XH+_M8K3O9Q?QNG0Y[_#\,,7TN39&6/L#R>6
M*?]T/AV.WU>SBUBER7PZNZC^-;?369Q6DU113.F@>>_)Y#)?[75U-9_Z"UO'
M4*TC^L<1K\9&A!A=0BQBB7B0'FFL-<+,$ZP--9+RV_'JH )3#AL4J,*(>^>0
M-<&B9*))DLGDO%[%J^<U>F_MU>-WRP9M;V<3_\\F,'WN_S4?3A=YL+_%V<4D
M?#%4+3\+58MO5Q*=X2\&JCNA?54^>E0>0E8VB2[SZQ?577WL/@[S&T4/KR;U
M<#;\$*MA<XJFEL/F8X:SZS+3X6)29CM<Q,LLP=EPM)[Q<%:]NXC3F,45/]=G
M/[)U/4S#6#XVK/-I/\1Z=MF<>GM41/-U]:SL*U3#?$3^WRJ+.:M&/:ORG92S
MYQO,\%$WKXZ;0JGF(\Z.[-C'JKZ(<=9<4AWOO-WF^\IWC*O_,Q_'L@[96?7
M!;?6_"46KG+;2&).6H&(2 EQ'@32D@EDN-$&TQA)V!IE[!S3+O#,4@)[Q%WT
M*"\?C22+G/#(A)7JMN*_6$NV?K(6^B_73_*)BVK.[6B5[/8T"^M=0>]W^1M_
M&>5U\JB*>05<%3J;EIV<<C7#\3R&\]GWWL(_2%<0-S_VVVI3U*I!8#N<5A\*
M*)0%L:&G_WF'+FZ,-''7C4B6<MQ0U]F=2G,XLHD^7KK,+8P,&G*I\I*KYY>9
M+!MAN#B:?+R9QW*;NF]H/Y/XO5? 4GGL9G[G]RI0Y^R&O5E:*[MJ63.W+04[
MGTU6.Y'E>K)542Z_'(Y&]GHRG^6O^!2S(=M\G<G<](?5\5DA1_:JCH_K>&6G
M>?FOQ-!LBB]._6AS9V]U 1^&]7"!_H]7Y_A"">;B6X4ZPUC_H4CQ2V;YXD!Z
MIC#[CN/(]QPCSCC'9N._ED[<XXO\1BVMWF?;X.VFSJN5]DTO2K>TM&\23GY@
M<>L>NZ@@[#L"+W(/@9<?:E31D4?SL/%Q]WUR6\9*9SN,K%-\NO?H ,*.7=C
MY%U],B#L@S'Y/K90@,F_]\FM6PW\V4VKGY8/LFD[ )3>I^4%6 98UIU'<Q@L
M6Q<V++"LE#=4S3820%F?5A= 62>\$YA/MK_-G]7V7MG:FHQC=1WMM)I,JU&L
M#VR''?R9]#H9J>\=B#M<_GH0\PJ*7Q]>_(ICXC9*A$L>$3>:($L214Y(ITWT
MI4'Q5DX%-AXG$Y'P@B N9$+&"(52<B+%$"EF7^L7M$+7OP]G%\/QJW'\_S*\
M?M9C#Z:3'7GY*Y!E]X4+9 ED"63Y&5ER1V(@2B#)DD5<4X),,A3A1(-RSF=:
M) \ARU4"XI>;110F7?)G_NLS!H7N_L">P)Z="L/<,3JA^?QN9B<TI^X U>Y[
M> *T).N<D0DMR;I@9D)+LKX:FM3SF)^G192+4++\([+1:*22H(GBQ*6$J RT
M)>LJJ@-E=E*1@3*!,H^7,@WC*F:VM%A:Q),E2/N(D>*)B<B3=&)KJCS$9H!#
M(3K3)PZ]LW'&J0@B+_;XR8_F8:_WW$I*87OH;[8K?:L_7ZS#=%?V?5PL+&13
MON['=O317M<_/ZI^.AU%^6E34WZZ54C>9F,90K]US3L-)-Y*5/VF!!>'EJ]Z
M/)SEJ_!?E.E-LFKU6]/O(H;2,<-6;PK=-WUH?K'U\+-LL(=4^F_UNB@L012)
M*!&2S9EH;-9GK9#@@5!A35)W;#7=H]?%6W\1PWP47Z6UC7)>UW%6GX_#K\-%
MOY(2'5@*X=5X+8#F_K_:_*(='9,'5;'V@.OY<&S'?FA'E6T$W+322.L71S?"
MKBY7*F=GGS7:* HX72N@*P^@:=LR+/U<TK(STF@T^5C>MG5YK5---=[&J]FR
M4!4WA:JL$<)VKXT_VLML-,U*DYM\5Y-YG0^K__1X<[5!?XM^][?@\DS@[VKW
M<$956QT>2+Y5(]LZ&5Q8/R_L&UN\Z@!UP-_CSJF2[G H^%I\^3%[R\<KWG5]
M'.&]+9!K[^GLHD3N_H_OO+'2M@VCSB86/JA&;M=/\4"K# BE8X@'XMT/H?2W
MX/I8^>37^"&.*@+TT2/ZZ&Z9]3$+'$"LXR!VI%WLCGE-@=T%D'7*D 5N.T 6
MV%T 8CT%L0>44P&$=3'R:'Z\6''W/:-,ARL1S;W#^"6EXW'WZRIV*?QOK('[
MRK8M3FE+S/?+VV]+\'>F[1].\B#MHY(V0 A R-$I-4@;I VH<F*2!VD?E;3!
M, $(.3JE!FFW'L5:QB$W92=VUG%+?*7AUC%&N7Z;C.-UE2_VGW%66>^;&IWN
M;P@?)R\\7+1[Z22ROW6P$Y7O5(?7/O81^9;@#X5E7^CP*H5E'&MDM>*(8\R1
M3MPBHDFRSE')G+M==BMDB$)Z@XB*&G&++3*!*62)ER)P32,16UU$FOV"=<GM
MTV'M1Y-2\]E2@Q"FS8"K+C=O?4B#D%UB2D^P&VBQ@TH,M-A[6MRI<W4HKOO?
M_^L3Q81W=^$ ^N\JY:PKJ@^$ (0 A "$ (0 A "$<&BM!D* P%F[@3,?1(C:
M6V0DIX@'+Y#AV"'AF<5"6<.2OATX"RDF8A)&W!*".+,.:6X-,L0QAPUC*B8(
MG %3MKY)"*GN#WA*&UTA(=\=<D+ > 1I]U?: "$ (4>GU"!MD#:@RHE)'J1]
M5-(&PP0@Y.B4&J3=>B@+\MUW&.IZ>S&9SE#6T\MJ,4'G?7Y],7$CQ&DS30?2
M_#J&5;")!YMXD-71S85S,GM5@/Y=%RV@/Z _H#^@?X<A"IQI( 0@!,CI.UQ.
M'TL:!\$1HUHBKK5'VF""J-%22\^,,FDKIP\+A35/2,M\).=&(D.B02HYGPQW
MG NYRNF;OH_CQTV,Y5V<7CY91UB>; 986LKK(W0@M(&T/B!+($L@2R!+(,NV
M.T?X)"0)#"5I,_$9RY%QF3&MB8)1R3#F]#992H.#=)E;O? NDV7PR%$3$4TF
M,I*8E9H 60)9[C ''C8.=P$1OT[&[W>Q;PC9)8?/<0#;9V>V3UOJ#9'C/4:.
M][!P3H;? ?V[+EI ?T!_0'] _PY#%(1"@1" $" 4>K!0J(R:$B8\2HI@Q+7$
M2!.%4?1.$NPH-]8\>-^PA%CV$ EE R7:BH0"5W8.O8$K@2N!*X$K#\:5S@=I
M;8C(1FD1M]0A*[#.)Y=2JA!(Y/'!VX; E2?-E;=W#3M8IM :.-PCWMA\]^;7
MG4^'><5W.9WIT!K;\>IPR!KK9-882+M#T@8( 0@Y.J4&:0.$ (2 4H.T>R)M
M@!" D*-3:I#VW7&G6]GJZF%MKIJPS6[2U9M3GQ8< =+O'ND)WP/4?Q[RQF<E
MXEU/1L-PU_;-2E#??#*JG*>59W.#B ](?G.34=BZNOL\OO.ZFJ3J:?3QTL5I
MQ<B@HIC2+I7N??8(UWL677R(WUAB]W]*^Z:9O8!=>T_C'G"WJV<!XMV]>/?J
M.0"=_%#=7_P01Q4!^N@1?>S=)P2! XAU'\3 !N[=F@*["R#KE"&+ 60!9('=
M!2#63Q![-YG9$4!8CU84C"3N1@G[8BCXH:81=T'R'=C=VNFXKM.6,<@5Y-HG
MN0(F@.Z"7$&N@ F@NR!7D"M@ NCN$<EUM^-[CS&O^5"!H=\FXWA=Y8O]9YQ5
MUOLL^EG=_3W4HULQ!Y\0 /V#8.S(4?8/\@(G1EA 1%J#>"08.<GS#YL<E5S+
M)+;Z!PFN=3Z&H4B,13PDCXSQ EEB6!2*&!W5JG_0O$;OK;UZO BQ/[?#Z=_L
M:!Z?#FL_FM3S:6RI>1#C;& HS!SI7O<@H,6NBQ9H\81I$7J2 _IW'Z*@8AH(
M 0@!" $( 0@!" $( 0@! F>'#9S%&"PEWB/.=4!<,XJ,4PP%(;1S6#B5_.W
MF1*"<V$E\D$YQ!F+2,=@D-8>8\E#9(I!X R8LO5MPJ/8JSW8,-ZA=</1<#:,
MD"(.:1Y'*F.0*\BU3W(%3 #=!;F"7 $30'=!KB!7P 30W2.2:_NQGTW1B9UE
MB(L32Q!_>S&9SM L3B^;4.]B.&+Y]68ZXF'G<9[DZCGX:$C8]>K]N%E(@X"9
MJMV'*$#_#BHQH#^@/Z _H/^AT;^#J@^$ (302T* )+@[D^ 8XY;&@(1@$G'L
M-;)&.,2PB)8[X0@GMY/@6+!)>.$1CR$A+I)#.E*-,$G>4D&Y2G*5!#=]'\>/
MFQC+NSB]?+*.L#S9#+"TE A'V, (W%(>')!EY^ ;R!+($L@2R/)PK1:XXB2J
MB Q+F2R%8LAI0A CSCMN(N%2WB9+AXW'R424&9/DS\B$C!$*I>1$BB%2S/Y_
M]KZTN8WD2/NO=&AWO#,1++KN0]J=",VU[^S:TL1(7G_<J)/L'1 -HP%*]*]_
ML[H!$B1(\1 (-,!RV#))-+JKL[*>?#(K*Y,78UF,Y99J2Y6-PXTEE3?CD^?8
M-RSU-,IIN0/F/L,_+5<BQ^50V/ AJJ#_ )6XH']!_X+^!?UWC?X#5/UB$(I!
MV$N#4$*AMX5"B51><D\0P]PC;IU$6M* <$@<8T8$L?BK]PUSB.7Y(Z&"' E1
MRF<46UEL9;&5Q5866[GQ')O O-?:(2>H0-PQ@FPD$E%/8F1@+'TP7[UM6&SE
MB[:5J[N&\+.%M_]^.4WOYF=Q6GOX/=3G=^S>L6/&V#=W;N#=7-B$WO<6=XOG
M_^;MK$X7FXZ-=$/\TI#Z2_/#7M<S&(J_4]17:ZBZMHBJ/H["WE0_V^FXF5_O
M)+,)N<JGB_4Y]D;OE>E=$GS;5DVJ/L3)+)ZY.*T8/JHHIFPIKT$,\JB:G<;J
MS'ZNS^9GE3W+O8'RL--\-I_&.[=UJV\!P^JV:R44PW=P$SNK/N7KYZ-0N5A-
MXS_F]32&:M94$WM1U>-\@W'L;<*G>G;:/=@W9Y-1A%M4UL,7VCI_W,GM[3G\
M'.)1]>O8'U??_NE?&'^S^%OW\W?YEE?"!<&2RHY#]<LH?OZA;MJ+]MI7K_Y\
M]>VWDVD]ZJ;DJ/IDV^I?;YN91\AX9Y-XN\G%4<2@K =#Z\#5C$DCAW5 )B7+
MF>;.R37W5)"@J58.!1_A.SIYI#5+X*,2SY6VU&EYL[;C#_.V'L>V_;$Y<_6X
M4X]KB/%Q:L=MBE/0AI4B=# W\_RG.XVRO&:4Q7VI/%0<WYW),XBE5L'5HSP]
M#1CQRH+^3V-$%]%.J]A#:34!&]6$3H\/3!DY*".Q2B")(P7^!]3/<"=1H$XR
M(B1/6-U4QD"M@?^ QA(+_(\RAHQ7"='D27*&V1CU3I11WJ.,G.Z=+GYJ;M/$
M(\#Q=I)!^SR.+HXKD Q<#I#^KIG%BA]5.WFIAY.8WFJL6);N#[L9]5UCK,=^
M- ]@ <$B_6:GL^K77\%R@5FK]-&";/DW Y?S+[#4QKZVH^K#S,+0X:]MAV(?
MYA.P[_EW.[VH?K(SV[]1&-@D@$HW\VGU"]RP(AC]=S?X3LG9WBEY9D\W6=#1
M !4?9#X[K5N F$D#:@^(6MD0NE< 1:K'/<1V+S1>D,4[R.@"M-KC0;U?517/
MZ';)_#2?PCPNF'?\G T,X!^8FOEH@1NV\J<6ICJ#XEG?N+0>3V"*JWG;.Q5@
ME_U\!&#3J<;2%ZE (^+1XE8]IMILN:?1MMW->@]GJ739[]@'+^WXUI7[B!M?
MTK)%'&3!RIQ4005F$74<(TZ41T8 -1/8R>"P)3BMN0C.,>T"#\@)[(')Q?R=
MH)%DD1,>F;!RK6_B9>'W%<[U5Y@2<#'#^_'O,;,OT(@?;%NW?QLWKHW3\QR^
M^37/.7S<@'$9U3V!@Y'\,&K\'Z^J".1LDF-9T_FBNV,]GL?P=O;05_M?,I05
M\184<O4MLTYVD'>Y"O)O"<18G6<YYL_OA,/+",T2%RM V56:T=VK&8V:3WD9
M=H&RZMOERN@^;^8M+,/VNZM2X3?#:)M%MB?'&:\":<O8((PHU.=/7B,+-;(K
MOLM#56D9>NP%>HM0['S6+&.U6:U ^OEM\N5H9"]@JD M/L?PIE<1@X_Q-\OK
M035'=M+&UVV<V(QR2ZETVP3]K5_==F;B'&A!M^8N7B_O<<?AB?ZI2AUS#5/W
MZNXP=G\A/2:&/^ Z\I!K]#&CU%S]1SWIQO><&^E48'#=!C:V%@9EXW^P(W )
M8F5GU4_1+VPKZ6PK'7XYH6>=DWNVMI\L\MT?B=VY:!^Q<?UD,>_XP.NP=Z7W
M+2Z)J8Y,68JX#Q%QEA32-GBDDU%2X\037VN 9"QE'A.#,%<2<6H)<M$Y^$Y,
M6G -7 '?9, KQ/?YNB!)<23PIG:F#P01GAU7-\DY!G-8]3 YR6J0+.30P0,=
MJH4?-?S33"^.MFPF?6;GHMT7*19JLD5J(FPDFBB#>"(8<:Q@<CB5R(J8@HO>
MVIS^=IV:>)R<<!XCQFS(=,8B$S1%6C)+A+/&L'AG<&X1D<N[-7^O9Z=K@;CV
M>B3N>MAN27 N/L39K-_R:3=%:XXDHX/*MSM\P'B&2$IA-<^#'K_9B[S:GH_!
ME,!+";SL')!>;G!E9\#R[6&EH'D?#5?"(^]5#O4P!GQ*2B1M"-Y&Z974F^!3
MMZ>@W78@X>UTFK?W.J[T8[?3]^OX;;<-]S[=\95+FD4>3JY:4"WXZ;X,2GXD
MJ"K!HVV'D[\K@:6]IV _K628/"ZFU):@TN HV7.<R<+'^4A6VXSJ\*A3GH=,
MVI[G+.=MDBZT[G!I7=)&*,\-XH)ZQ+WTR*F D;,!8Z*YT)@]'ZW[ZI,%CPN%
M,7)$I1Q4+.P+J^]1)T\+D=N*HUNRDA9927>G_);HV&"HV+ J]>\]1)5:_2]M
M#S$""^) CH24%O$4)'+"4R25CI%:8CVA-\F1Q,8X$G%.<@9RA(U$V@.AXB(1
M)N!+4JTE^&\EO8G*(\;UH")4FRN\L=^.WJVE-UZ*.0-]C)^[TQ7;?.<K=!P$
MLR)X1227:G%Z278G]B3V"PW9! -_;4>?[$7[YE7UYY>C*7]>594_WSAMLJQ-
M\S6G5]9.>&E .4>%1BF2A#@1X.3RW.H,^*YCT3F1PD9/>+UMVSAKWX[#EX]Z
MP07OFO'T6@I)_O[BC)<_'=?_F,?V8T:2AQ[Y>LB[=D>^-E+]YUZMV!.7Z.-I
MKM:RF(?J+_$\CBJV&L4^NTH+RA'M?$[ZOJCV93V8_G!G/J]YHR9,VV4)=3?K
MCX'"O[P[^@D_B+L?T#B0H.VKQ.03PXN2,#=*ORQ/N]TXZ98WPNH$5AQN.U_)
M;EJ>+;WU#%P^H>K!5\PE$3+FYLQ1NW(P;M<GX':*:(=QY(WH8_*@DVS'#SJ6
M=HSEIH[%R6.B-W6OAUS#CQE]T"N*!PU+'N,-RO6AXG_8V-:/.&Z^Z]1VMS:6
M2+"U(G\;H:"N&84;8WL*--U9K^[G(23O[^,\[JX"+P@_?]K%!\K4#&:)98Y?
M=22_KYKQ[VX*SEL_GYN*IF]A5B_#,L.;UWTN>GV RZQ,QZ"F8S>H=QF5J"[#
M$F7JRDK:Z^G8S4I:/5!6=2?*RLR5A;37T[&;A?1[/BI0)JNLG;V>CMVLG;]W
M=XNA>@N2M%?+Z.Z1Y5='_)A2DD],/'*8\ABS>T8Z:?J2%*^G<61SI>6[,W?)
M4W,,'Q.[?'RVST+[NH#_;;IW[UF[@6CD  'B&0XV%F$/(97S,!M/7T9NZ1<B
MMT6G]U"GB["+L(NP7[JP%TRO3\"XC>J5V2BS,22O<6-M+7^;-FY1>B%O?1;$
MVI,U4H1=A'V8PGZ)Z+^3V2BQM7V=N0):!R?L$EO;2FSMY8JYB+:(MHBV&+G"
MS,MLE.R+C<?1/LR]C^T3RQX^3R&2_9BPX2ZP@4[',U=:>+CH=[74[BB#S#1,
M&A?(RH013UHAJT5$F&JJE$Z)LK6.5Q8G1FW2R"5.<J$]CC1G%#'A>(K<Z\3,
MLB+ ]"2.7Z]$R]^GQ9*_5@5FTI6%692!072U#@R]KU QQG?6@!D"PGUSB(OI
MI6+;OI*' GZW@I]1-!)B*=PM>,29LL@:Q9&TA#DN'>5VO1R*23Y8*I$RR2#N
MHT<:&_@VP";3T0G-^37P6Z:8+C),?UKT)O_=SN*+Q\!]BJ7G4IG[B*:[FO0?
MF[.S./4UC.V?W8DYY&P;0S7I&]3LBO/OZS0.URANP>;M.I*WJS7TW!4ZMU"R
M_CFGY:6H_ZW@,)@JJ/O%^2(S5CNLD.*YCV(,'!FN!5+"!,URBT6WUO?G,0[O
M5FN@$G/$-!MP#=2G%X ON+'_9O-%<Y;A4<A= ?%?\T_5CW8Z:OHB01_JL_FH
M\PE>9#3FI3H*SSA?9W4(H[B7\[6K5;FHA%<M U)5CDCM"%3W>/J&N]P&BGXE
M%GVK7X*#DD$KCFP4$G$;%#)*&T1X@H\P25ZEFWX)HRRYR#A223G$G6/(,>^0
ME%Y@XY6E1MST2WZ*T_J\*RSP2ZZT^VN686P?%8Z^SRM1QV0_P]'[O*Q>*LKM
M*PDL,'@K#&JGJ \>$#!XBSA6#&G'*>(J6$H=B=:+M2TYK@ =/4;6&H6X9@D9
MP3V27#!OK97!XDUOR1TL!M[<DGNVTD5/V'XKN/@L,U$D/?RVRX<9IGO0(98B
MYJ+!1;1%M!L7;3%R#Q=V.<3R0F9C$8HML[$-("K"+JA?A%V$74SLGE9P>?:P
M5YFY EH'+>R7Z]]N)_A5*&;A\T781=C%-!8^7V9C__)$#C/Y]'^:G/^="T*4
M3DF'L\8&.ATEU>K65"L:4_)1$<0ECH@[(9%-QB(<K X,:^$#6TNU\MQCIQ52
MA#K$M77(&JJ1U<1[C8F5X7KIEZN%GK.KWJ>KQNS7^K)O*NV*L*'G7:';1K.O
M*L1"H$E%6/36>U A&9&.F"-O!8D!_K'<KAVFY,I;S$TNM8$1QS@A1U1"E%EJ
MI**2)K9+%:+\6 Y;A0X1HU^JR=Q76EILZJV R/-Q#:<",B)* ,1L'QTVR!OO
MO13<!\QO J)/P:@4(Y(JGRYGP2.7C$/:8K@72PESLNWT94J.U7Z"8,E?/@Q@
M+/G+PY=TV<(I6SB'IM-%V$78ARGL1Z#UQMC]$^"Z>_;JX]Y.:Z",>^V#%04?
MQ&P4N"G8?IC"+CA3A#UD81<36W*;]R0DMJN(YN_Q/([GL;+C4/U/,YJ?1=17
MR]M$V>P25-LWZ[+KH-J>E;Q^L-B_6+QVUT(_#-6]==F6<M5/*U?M7>(F.*0,
M<X@;XI .AB")E0U.^>!#O+FAR"D6E@N*)(L!<4<$<DX'%+05.FI!M5\K"[>=
M<M5'7-[=J:0L^)>UX#<EUUO7^P$S@^'1L(,I+%V\U0$NF%(V>DAK;NFF_LF>
M3=XL'-5^\6V@D/2F@L[[.*'#78 E!7&?/ 8L4I0<.X2]X(AC'Y$)T2 L5)*$
M**'H6H.;1Z?U+U#@[3CT"/ <.8BBI/)O46T4=I1+9Y&/N?JN(QII"2ZGDBH&
MBXWS9JW^^*-3^;>A-N;X[H9(@U";0\3BEVH:2_K^0=E.ZZ+ 2END-4F(>\N1
M%23;0:PL<<8DL=806'(J9) :&9VC;020T&&6$#,!-,1@[T7:=OJ^/J;[B8'[
MMGU9T'08CD:9B^',16E/.*QS V5=#&-=W#\=_2,P*Q,RD DIZV.(=J-,Q^$[
MJ&6^RGSMWD_=8(_4 H]#7&X#G8X2GKM]CR)&@HU/2$A#$(^$(L>5121$J076
MWI&OJEBUQ1ZILFQN;7-/E%E'C0PH8LQ!"8)!)D:,-./&$6Z#L>IK-K=*<]VR
MO76(YG%?V6BQG[?"8.+.))(XDEPRQ*E-2"<M  8)5DQ;QNA:=2H:F M>!60Y
MC8@'%N$G(5#"P@D9@K9AZ\UUY;'83PS<X/;6X[N1E\XCSP:7FVH-7X2]16&7
M[:<O;C\]@TZ7PR%%VD7:1=K%.CZ[L,L1II<U&_L8]]B5>_;;M'']:>>+JDG]
MX:5^DC_,O8_M$VML; KF]G$JA[OT!CH=)4)U:X2*4!JU4QI)8W)#":V13M@A
MS8UAC#DEG+L9H3(,FR2<0B+)A+C4#&DI!4I,!A6C9USY:Q&JE?7_/BV6_$-#
M4_2^$@?X[@('0\"^)X;GA[V87BJV[2NM*.!W>T,FDFBB+" *DXLX=019' 1B
M3A+%,67*XK5=2F6%H%*A8"E!W'"!C P!&6Q)M %^S"=6-AN>/U@,W,/P_#X"
MZL[*A=CQ/($^SJ?U^*0:U>-8Q<\PKA84M'#^ [*++^#LRIZ5YWOPQ'RQ6M?P
MI^6EJ'\I\;<YVA<TB3Q1C9S7 2B<-<@JK!'6EFBMN#9LS>=EE(>DB$#>)88X
MP0Q9&QS0/@,?,,7!SNVDQ)\X$OCNY(R!@<;E>:L"&R_#:KYHRC(\!CF #8#%
MO7.![6ELX>/J/./BBPS+O%1WH<S7D!;G!L]<O61L'>YR&^ATE*#TK=Z)X#BP
MX!,*!)M<3M @9T5$,LADL'(JLK6Z<-33)*GU, *1$(^.(9<(0<I&@[FEC/I0
MSEP=^)DK0W4@S#AD)=.(:U <ZPU%V@6ML3-,,'I3<3"H$W8V():X!;<V?P?K
M7% K)J^%-#ZNN;5;41P^;,4Y1#Q^J>9Q7]EHL9^WPJ#4AH; ,>+*2L2IY\B:
M8)%4U"E%C"-ZK1POP\PP0BS27 ,,,N:0,QS^<8H%EIQP3F__S-6>EE5=W=2%
MGZT;Q15M7NAAM^O*CAECW[QY=@7?1%/<KP"D?A+?S<_ <'KX/=3GW_\[_/-@
MD82ZG8SLQ>LTBI^O"^3_YNVL3A?+YW=7H'9FI[,WW:LC>,FS]G7N:):W7]>$
M=/46JP\>VB[8[=*HQ_F54">4AS_A"Q);%0;GRA!#N"!8,J.^ 4%\2[Y;3NO*
MY/5?(!A_<V-@2]%U,)6?5H_G=@6G-!@?1X5&*>;2IT0 4^,Q(($I<RPZ)U+X
M7]*C7&J:V;B9Q?ZK[S[^KQ(2J'U42 !N(6X-0T;D0JB>,*Z<]HD![GP^&[T>
MV?')?[R*8_2W#X.8RU??_VW<N#9.SS,P5/5X,I^UU2>@D-5E9-!=5+/36$WC
MJ*.95;+UM \35DWJ/NKE>9+#A_!C6X-Y[64[6NRY7!Q?+L$5^?6_K4[&H""U
MNAQS!Q']OYM SGL']*Q[X:X9A<= :W]I?M3K>@:C\'<*+&^K5=V^6O77:/.N
M6JA "6SUKAE/HY]/N\23'VQ;7TLWV81(Y4Y%NJ9R3[97/_7).7E1S4ZGL6^'
M.<ZI.F=PS6E;19!%J#[$"5@2%Z<5PT<5!8QZCH7SY+<XRB_000C\,VX .M!9
MKQ!=#\]JUG1O>!U(4CVV8U_;467;-L)5^=5'5YNV\!4[JRS<\6RI7/#[ZCVR
MJHU75<UE53N^U_H#.UJU(8\0P"7K7=QPZ?L'07VNLD(TF (@L %IEA3B/' C
MI/*<K?>@<$R[P,&U$3BG?D</-B3HW,2.$QZ9L%+=]/U_F+>@&FW[8W/F0'H9
M0:]VM#_"O7\8-?Z/5U4$RCO)OLMT'E]=LY</8S:$@AP&3FX>"VM?SVWN?<0#
MR4TGC%??L^.G\)F=2NO5]V_]/^9U6W?&'M;P+_"&/]1->]$>5;^._?%S6=!#
M@?OWX^K+,<^G(E#0*1JJ5 X\&\2E$_"3< @[[J-)P$N36'.[8Y32RH1"@B_R
M''C4SL!W0B(R$"DE)7<AT(H>_)Q2])DH_@3N]_NT\@FY[F,'^!QU9BW?$P5[
M@2ZBG:(X'LKTO)U,ZU%%U'43NV9#AF9Y*[ ',)@+F-^SR2AF#E]G>WI]K=K1
M:,G?&R#],S"WV69&N&AV 9Y 'T=NX:=KRWHRG[9S"TP?C#B\\,_]Y;_-I_X4
MD+]Z>P*L)5OYZML__0OC;W[^[6WW_]]5G^K9Z;4[??SP]K?J_P$0P6/;#BX6
MWWGW7T!P1J,X[;]Y5/VG!:E6'^UT>M&Q@@\PV%&\Z/]R!'P!!@G84H>Y';75
MMR#]4:^"HXO^L9=W[.73W;?_0[M\QBWWA3<_K=L*;*?U^25MNW"$%KD2O3NT
MD.'B=M6WEP^X>M=J91'TSSL>E-94A8[?X=&LJ"L\UI]6H ^GT89_S,&*Q\Q!
M04E^F )Q/77SZ<E1=\__ CV(H#\-("%H1/P\B=-9%6(+[]?IF0=BT)Q59]<2
M\D&/ $M/1A'-81VYNIE,FWPT+W\&/X:Y7W!BVZWK:3R-X&J# L+33SHUO+RJ
M8\KUV(_FX>:=G#V!=\F"'\6VU_K9W.5/,NL^<R-@VL?5QU-0\*O[?:H!*WHP
MZ99V_E9W= #\N_FT2J-Y'?+;V)/^\TDSG:5F5#=Y5)T4\A(_?NE:]G!/^L=K
M4909S' +0@1U>^DBO$M@H+#5[7A;?;+9]'4; K!<@8!D'+?9CO46*YO"RBUX
M3#4'F4VKMQ]^K#061[>RLP'I26=,EARL6G$#VZ/NH]V,_Z[1=F"S0D_B^ 00
M(P/:[+2>!C0!3+WHG/E>[U,]/>MH!D!7.^LM>?[^U1777([CZF_=Y'7!DS@]
M:Y>F&3C(44]WOL1SKMVK#UUTC&FZT)KKD<UN,'81>9@U>9K@IO_ZE6Q^9U-S
MQ^:=Q9KD+(1DF47<2(\T5@9A%3 C0(DQ-9OT(E84^!H"?KP"P)YO+K,<VE_;
M=A[#VW'(/^00]IUY_/):'K^X9[N/D^/M'.)\.F>#J\'"CCMC_27L2_,N9#@[
MG3;SD]-J8B\Z&PWJ?F#:JB06-!&+DL :<6LYTKF%'=;)6A*)#VDMX^8IVOI;
M+\'V8_.VQX>E^L;V/Z?-C5H*=ZN@O$<%J=D7%<P<V-OV])(C]\RS/30%DT1)
M(JB .=(1<>$,,@X')&UPABCJ(EL+J@A-'75$H80#13PQA@QE&EF?B N>!4KI
M ^#P5UC#9^,ZU;[[]6T7(?\]$__WZ?U\!MP\MMW.R_\#26P( [>5\O#U^A?B
MI '$Z[VQV/II\ZDSV6D.OE5<0E[;._]UMA1CWQ&_P]+/:)WA5@/V$;#4//?P
MM)(R%"753%+ ,KE6YGU30;_;S/+[Z=(JOYOGS:KWZ<.IA<_[3Z]I:=M]L*J>
MO[[[Y1[]9.2(D^U40GZZBL['TW@"[+6+%?1ON:2E"QK\;VUVK<^:/-C&_W&P
M9))%YR-01I1T!$TC@2'+>$#".4>(E8K%-3*I*16&R8A$,!+0,UGDJ* H@D)C
MD01AS@Z?3(HMY<]^/9!VP:GFCF2.SN6YOF=K)Y-I\QG><I9#K0>FL"GK&\W]
M56Q.7714(L,205XXY;F-3O&UU/]G]GY6SC#_.LZ[W#=@]&N,O=P/'1U8Y+R$
MSN_,*UO&8E;WG<[B[+0)'73T(3E FIZ6+9,^EB&7F]D?\/G\+(;;PC33Z'-*
M=\B!O85M77UFWF<\RKDB\ & %T#]I-\=6@&S12@\ U[.!+>92R[B34T;;UCL
MWN5>3X,;Q]G::]0M$-)9AY AQ[)</#28U%1SZ[A!(5=MX))%9$S$*#A'B;%.
M@$O^3%[1[S#Q)V-XI_!K7E?@'F6KW3M'"]\\F_,5U'S;:]'*7S:$GX1OZ735
M5P/HT2VY5YU?-)Z!/UGG--"7I\2>!A^#B\A&+!!G 2,CP+6GP4G+N3'.R*$I
M\:^7$]9?_#XGW7T\M>/_;)J0M^PVI=IT7[A!M=QA (SOD@&JDX4H7H *"Q48
M[G#8VWS<1C+D>')(VABY=HIVI1"_7H67.OE+#<H5_P)V]*8F_KZ0?A>0VAR^
M[DDTJF<'5\IVW8G*&@H#&=5P&SN]N-J&G$QKGT&XET*^%/X,:AK'^?J)S3@\
M[[;P[;4;7&Z&':]&_E&7K=\]/>]MV2X/]S(G(/1;H'E'OQDO-@/\75O.E9OW
M:;<YCV'<]D&VO,@F<5HWH4L0ZN.^5\^J%\Y)+XOE?M]IEZC3?W)HJR^"I3 Z
M4:0X3[#Z,$%&*8VPHCRIF+",:\YB\-XKQB@2/$=$,G.R@7&DM(:OV:0\73ON
M>TOL[4<0^R+/+L<TP(3,+CJ?L1]@_GA3+ <?F_U8A!VIN9)!M^SR5N_)0K\7
MJMJVC:]7R?Z=.VEIVIQUGV??H/=?KCX$>S(H*0S\>$ O[ ,#@,0Q\3PWVC4*
M&&02"=D$A)(3PKT6T3&V9GZET2%X\)JLD2(?.LO-!;%%N8 =-H$3$_0#&.2*
MGO[>P_YFU_S08^S+-3^H42V\JOM!Z-(BAIMG?^XY\M,;U]4'7!K@04GB6H@,
M%"E^[DC([L_4[TPBA*R(I#^;_>^GE^6V)_8D]@4. $%@V*_MZ).]:-^\JOZ\
M39GM_ICVNJ*4N.KWEQ1^4&L<?(!FTCD/.;6N=Q3:I:-P+:K:SN#_^F. G=>Q
MFLD,[]:<Q6[K_O$G($MZ<7?I(P_JPAR\B[.JCR!52R?BI8OR2VG&J\ZW'8T:
M?YF*>M.7;_,!U/X,]'K(]:'['7?O:8##WWVVOA3Z$._E<*ZV6A9+J[Y^&.C4
MABXZT 4;\C'<48Y&=K>W(737V-&UT(2+7<919<]M/<KARNOGCL[L197FTQR/
MK*;QO(8QY -(7XA[K ARA09-XYFMNWVDA0A63A$OP@_'U0\YVI2/!]O/57TV
M&2U2I"[%=N>3%H'P_+ZKS\^#G\9V/IIU>6VG.<FJ.[+<=.]S^^'D(>]*;O1H
MLQ>:&!8]N"R&(FZ(1$99G4.-.A]33M&M97$$"A<;$Y AEB!.<Y31JX1H\B0Y
MPVR,:V[.!W\:PWP4WZ?U^'@,#XB.?\QJ>?<9Z()JUU'M,A;8J_95^/(ZQ-VR
MH+K 83M;?IH:^,*GO(*_M6<9=A8TH)FW<./VN]?%MCQ@T2X+-G7UFFX3DIW/
MFF4ELSP\$'A^MWPY&MF+9CZ#VW^.X4W_*(./\3?+Z_/Y2#MIX^LVQY5AEI<R
MZHNN=;=^=5LC($#RNJ_G\GIYCSLZ O5/U?!4(O/A]COKP"T.N!\;)AYRW4.N
MD<>8FR?=[)X&2-W4/K(#TJH6=]]_>ODZ4/8W=R%7=^N=N(0[6R\_VO:T3]K(
M/^3C/,"M,H#MMAKD5FL%[MA'WW(KBYV+]KJN/X]:/W>'H6=IZ;ZMSC;[MBD@
M\O:?=08YZ8 M2\60#3*A7!4.4QD=I6MI)5^S*[B)M)*,J_#!SU> NJ'>..0(
MF[M/-+U(0'EV6-XDH^G;!15&\WSE9OHX39L36F/=561\VNI8S%3A,L_!91XL
MW!<./=M1T<)7-LE7G#6",2X1UC0BC@4#YF(%TEHISX5W,J[E<N^<K^3=\_%L
M<23V$CDWQ5JDOCOOL #'T#E+B<(\,X[\.CZ''YKI18FZ#(ZI%"=I2&V["E/9
M)%/A6GK"<TLNPC7B(6#D#+7(6)IL"-PJLE;K8-=,Y1(K-T5-I"KAE+VE)B6<
M\LS \5L^-E.'JW2TKEYEE\3A>Y]AD<Q1@BR#HR[%5RI!ED.E+MYJA6,02 =C
M<TLTCUQR!L%?,95!:\+PT*C+M2#+ EA_[G$5KN].'O>?;8C:L+O/G!0@&3JS
M*4&79V<V.=E^UA?#SYDODYP16R(P@Z,QQ:\J$9A#I3$$!\N,9$@+GQ 7,B!K
MM$31"&<5US3Y.#0:LP3.WT86R$R?Y-)AYZ927.@19G<7^RO@,73J4H(RS]WQ
MZO*4X"CF,P0=*.:S [GI21>.*=&8P=&8XD25:,RATAC+&/$L*(0U9XCKQ)#3
M0B+).4Z8"*(3_QH:TS6HWR2'N430OV0 _3T+Z7WZ6]M_=5/AER/!-K6W5,"C
M1& .CL;\V'5PZXXWC_KCQJ?UI)P\&AYU*4Y4B< <*G4)F'J'(T'1.(NXQP&9
ME 0B-.F8M$Q&K67KID (%CZ7I9>Y2BAQR"9FD;<F^NB\X6J@16L?QV H,)AR
MV&A_&4P)Q#PSI/P4S^.HF>1JR-&?CF$8)T_,X2VAER$$#5XX]I30R_[Q%Y(<
M9L*Y'$$QB#L;D;%:(6YE\"9:)2R[R5^(3-$0ZY#R'KZ3:#Y1S1PB7DI,4I"6
MQD/@+^9(RTWQEX(A)0)S</SEX]2&"(/]HV_ZD'_+J[Z$8 9'88K[5$(PATIA
M:#+628U12BQE'F.1D4ZB%)*,2F,<_5K/:6P9%9I21&*N%*\31BY%B9@RC!"C
MDZ4/:6HY> I3XB][S%]*_.69\>1=,T:YZ&:<]45X[<DT]G6Q2Q1F<!2F>% E
M"G.H%,9H)G240&&(#(B3"!3&$8TP@?]C45K"UG:1/.9)>,X0580ASJ)#%CNX
MA60F"JT\)>P0* RE)0:SOQRFQ&">&5"6JZT$70;'6(K/5((NA\I8@*((P0)P
M#H4MXMQ@9$DP*#"K'8DIB;"1JKH;)A.$'S%Z=Y/PLKZ'SB=*3.2Y#P=UQ5E&
MS?@$ 4:>E?(L0V47Q9LI\9!#91?)<*>2I4CYY!!7N7H_8P:1Y//&35")#JX\
M2P><[YJQ7RW3LBG:4D(@^TM92@AD6S7[)_;BZ07[2RAD"$[\"\>=EQL*V1EZ
M?'M;V]#]I4XZ:*(E%<A8G!#'1B(CDD?>):T2MLI',33JM*ALM_K! M)_ZQ%]
M4S2*R1+ZN7O1/8^:?E?"0H?!L:;S>*W?<HD)#8YF%?>NQ(0*S=H&S<I9PLDJ
MA;RB!G$J.;(D&H2#I3I&EWA:[\&^RY(UMW*L#.DK?]E4TC'95/F] \&S@Z%9
M)92UY=)\2[I56CL-CVP=B ^X+U(L9.O%DBW.I<<.1T2MY8@;K)&EB2')M8M8
M",7%V@FO =4'7'Y^L>!@FZ)9I@2S#I)EE6#6KEC6T57B4XEN#8YP;<8;='!U
MG%X*XEA,9E7;C.I0+35QY\+?%SG?H\3W2[J0ML,E;5X2':ARR,08$;?PC^..
M(Z*H$H:89%S8!]+VKAEOF+<=<:,'%2#[PD+M'X#9[D'Q8.C=+4$T^GSTCNX+
MO7/-*&QB#G^Q];0ZMZ-YS"TMQG'98;2RB\5?0FF#8W:;\4"OPQ@]IAG'0C,'
M^!\.M]L&C/WK;E7\(?,P1.:WOUR+&1PLQQYYG4L@*6F1\U8CPV.0VD3LS"X[
ML2\/\=U*N]YMK&,&)T=X8 6/OK@4AL.MGAW^;_*G$D[YLM%].ZT!+X;LW+\\
MD8( \Z?_\8J^>IFY0X>GQ"]=RJNP##]GR_W]TGZ^ ^,\K3W\'NKS.YQ+=LP8
M^V8OW,L-5NV?3_/6P>PTPO_J::C^,;=3T)WL;E),V5'W$5 D&.Q%-05^!!P@
M5##R^@S(2\SSU?FEH*U_Y#MY.ZEG\#<;_F_>SG+]N;ZE4>X+T'0W^V44/_]0
M-^U%6W6<JNWJU1U5\-;^M*K;JA[[T3P_I1Y7)PNVE7_N!IFGM;*N.8_'JXJP
MB1F5]\EP8'/:7YH?]CJ+O/9?2'CNN6MU6X&=ERBZ.XM @XI=JAPL@7\]K# V
MEI0DG30B28)K%:T'KRI%Y AE4F,L&25;*70BK_E"XMY")\?L3D]H$'I3P=6C
M+.=IA">U,1_@3//9?!HK@,QQ<U;[RL5QA&^U5?P\B7X!B'9:M[%*T^8,,!6,
M>CWIH+*]&$=8,?#L[J.,?#4\ZV3:N:E9,U=0%#YI5F'ZN (UAKM>W62!J%5S
MN5<<4X*'Q;'/'^>"Y^T,/HDGJ^.<3)O_NQRH ]3UIW4\S^@/7X$W;>>CKM/N
MW:!^7 UJEC[,73O+8K:CT45E^R4^6UWREP:NOCY-\/;PUSEH7C8_H*Q9I,U9
MMD>?J\E\.FG:V!:#]&"#=%5OL7J[5I,%*-HM4$MN//S??H0GN&G];T>M';>H
M!2J2KH!O0?B6N!<Y5CG!G4:9>[)FW#.Y5K9U47+)+5EO#!*H-?"?@ RQ!''*
M&#)>)423)\D99F/4-W'O@S\%+1G%]^F7&H O_J4^7Z\M>;EOU_X&5.M]NB4.
M]1&&\<.H\7^\JB(@YB3S]^D\WK4M<N!J]25CG9K1J/G44=B.&7:;([ ^9Z?=
MPLX%D9MQ!\>+I5XO GL=O;Q4PN6N2MLVONX0^%.]N,7MR-8WB3B-]11F:%:?
M==^9MS'-1]4(9KU]O6DPV,]]DZ4_MIB==2G8^:Q91A;S>& J\_#SY6AD+YKY
M#![Q.8(GW#W.X&/\S?)ZT+R1G;3Q=1LG-INOI1@Z7[2_]:O;=CK/81;[#?'7
MRWO<L>/9/U6P8T/H-UF*=_GU_87D6%/RD.O,L38;O>$#KJ'X6 C^I)O=LV6L
M'Y\0N)68G=[=$M)[%S_:,X$>;/+84C9;FXRK:.'F,AZ>.EM_6YK0],3*-UN8
MLLNMKN%-VN[6T%8W%,IZ>E0"T?_D!**RG/9D.16N5;C6P 2Z3URKH$@1]N$S
MH.$)?C?\YMNW9WVYS&Y_N)FW=AS:.S/?RZ(8#H]YRBG2_4_TVGBP_,M<IQH^
MS3F,./>>P,S&A/TDG"GB/AAQ#Y[LF%U*WKPP/3] 83_#(<G-G8D\#.KRT(GZ
M<=[" ..T3R2MFW%[6D^>6+'U,*9BB';VD&M?/4*T=V0@>64D-XPBGS!#//F$
MM(X<24DLE](ERN+-#"1L;$HTX%SS/%<_=P19&A3BFDK*L/!!TIL92,ODHB_D
M'_V]6Y\QO 7YVY/8[[C]I4[Q6A8F:J-_'>;3/'UM' \%"PBM+J*=7JW^F_G]
M174/""I*C:X=GWX>HD8_0JH#2[^GFOIH<C]TZ0GBQBED%8N(JZ"3UY:"2;AI
M!%(@!* >(^TDABN)0S8QB[PUT4?G#5=K1N!Y.J-OJJ(R/1(#.]B\<R1Y=CP>
M5"QV$!1Z=R?NXGD<-9-\KB#ZTS$,X^2)!9$/8R*&2% .^4CNU_LRP1HJM--@
M@V+*9R@\LE@YY(5W06EK EX[1>:)Y$YZAX3.'DP( KG<<5M%(1465'EJ7YPO
M(Y_!ESEDU=UKJ'CA#.3E:NW^^BO$.,$2N"I!2XXX%QX90CQBU%+NK-,RK/6%
M(3)%0RP@N_<&\419/B[L$/%28I*"M#3NE[]BCK0L+8OWUU\YC)#_[DY93FV(
M,-@_^B./^;>\>LOVR[!X2(GX?<EEL5)IZ3E&5.<.9RI:9*/R /)1$TP44S&M
M;;]83#'3"NE(!>)1:V19C(@R^, 2SJA9.P!^Z"X++[LO>^^QE)AIP=M#]5@4
M93Y(XA"31B*.A44Z1(6(HRYIJ@#KU[?9A04?AS,4J;>(!R*1,5@@JQ4-'KL4
MG-LOCZ5LK^RQNW(84?V=X<*[9HQRU9<X6]1I.9G&F,L0[JK%]R"F8X@\I,3\
MOI@PY@V)!M/LL70;)@'\$)-0BLD9C(E@;JUD%<,XJ,@3\CY1^ [%R'%C$'@Q
M4A!!(LY>SLOR6$398]E[CV4S4=/2*VU;>KV?O=+VU^LQE!'LP4)$*0WB6DID
M#3@T02?B:<R=9==LA<<\"0\7@5/$$&?1(8L=1DDR$X56GA*V7UX/I</:I=F+
M1F1[Y1H=QN[![HH4ESV;8?&:K;9A(SL4[H-J]Q8)'[2$2[>[/3CO4;K=;;VS
M,&?*"FV0TD$BSEU FD2*G*3$)LJ3HFL[TUOL=K<E[D[HD>3#VK4HW>[6"?P]
M;95N_2M\]:50O_RJG2!N"^A*Z:4B@2 :<(!%FQ2R,F6'VS,?O)8LZ)L+W3FF
M7>"@Q@)[Q%WTR(B@$:QX3GADPDIU<Z'_'MO9=.YG76,G6+Z_]]V7WL**.N\6
M\4]UZT=-.Y_&C_&N-@,K+1BN3UFHV\G(7KQ.H_CY9D^!W/"I3A=+"777H'9F
MI[,WW>0@F(:S]K6S;1P!%JU-XY6<5TOC;\R1VDQ/YMO%48_S&Z%.*H]XQ!<D
MMB:,5]_SRP8C*].SJ-B.\3<W!C,(:;WZ_IHZ5K^-[/ARP?28L;&&;(?2UN)M
M[KP3S^MFWHXNJM"OUAB.<HF[_YK#GW)?MJXUQ0^-G8;<V.(G,-5^UDS;RLYG
MI\TTV_35CD#_UE;P1'O2;816LVC/<E,;,)E@^>P?,??R69DD>PD5^:JV/IN,
M0$F778+@RUF]JF8^K9KIB04"82\[8N3/QR?PY+Y;6Y-WC$:CW&THYIO&S$#R
M@+LO]\V(FG%;?0L7#ZI3T+50":!Y_-PU4-I]R:<=%EY8Z^KQ[Z>7T;P)Z%;/
MM9!-,.S7=O3)7K1O7E5_WC5!VF+@YU9%*8@&HF+\S;HAZ/[\W7'U*V!'"'VZ
MQJ*36=Z,SITE+_&FPR4 &!BHL_!=OVABUDQG;4^: *6Z)CP+E+S>N+)N+]$N
M?S'-I_#I]&[<^S:WA>DA:WFK+[[$LGGEHL\:#*B+]/>]UFPU@6$N^K9EY -9
MS9-=WF4%!UV<?8J G3Z/%%[D;\<?CBL@:/W'1YTQ@'>MQ_-ET\X6G*U\V^4W
M)M,FMRFK/OSWW^#Z++%X;D?S?B!3^ZE:-NWLN[ZM]$=JHY_G%I'AJB,H&!J,
MX!]:_?C^?W[]"1%3@31#S-WL8-!U$SKD[D5S><EOW2<+N<!\GL4XRY*!F6SS
MG?-I@O'E<VSE3\%$@-7(O[7SR00L'/P)WB6.S^MI,^YLUJ+])RP:H$S3RQ9W
M*U-F<Z^]ZRW;VFO]WO*[CF+^U%UT-XOCL&QS>CQ<ZU. Y'K'K[5>M/F9N0V?
M;]J^S=>!->WDT6@A6,R90!SQQ S27A/DE54$:Y,(68L0L1!U#)$C9<%GY(E@
MY*37*##N26(1_B>_Z#C^F(6YH?:=M[]6)$H![$M$+:6(<PE>;O06*<Q3B(DE
M9?C&_>%-OA;EQ[=%K/:B36GN8-GW?)[&V%F"<>;T9W#E:9N!$=;5AS@!J^K
M3#)\M&@&?:.5\[HY[.ZUO'N: _?/Z5=+F+UFDWNP[GR,?BUGV)^>Q&X-VPE8
MLL]=7SV [@-;T=)A8XEBR&H?<I8Z1YI[@8R)3L9$E71K*_KK5;\7[@.57]ZG
M_'(_-/WHJI'C%'A'3R1[2[&@%*G)9/"R[_F*AE]]H8W9D1W[?JEDJME<Q(B6
MUW;W.Z[>'K+.NF1"=#PB00Q!/"J-8"P">:-<3(;G4E1K.JN94X#C*#H:,L0S
MI(/*V48DJ1@9-HXO=19T<_SZ73/VMCVMQ^<PE&9Z\6D*;_T^I4TI+=D/I:VZ
M7L1 8,<YF1T$L@#>K(J3*;S+%.[:=8^&V5G*JNJ$A9J4ND]"CBVN? I_&P,/
M!Q(^JO_9->/,?D&OT-;[.,I.2*;_N8%U[H':^2M PO\QKR<=!;^!_>WI?!::
M3YU3<]VA@9\6^T7=W1<N2;Y?#ARU1[>NQN4KY]?M3,.XS9=>O>[*XQ^T'(<U
MLX71%T9_B:6!)X&EE8A%E1#/A3(T-P(Q;I0&5NPM6]L*V@-&[W6(EF""I)&Y
M2JV.R&*3$ N$>.VY#T041C\H1E\(_486=,ZS)EQC%(W!L#@C1CI9C&A*6#L3
ME5DO+U (_9,4?<!V?657]A&WON/\EXX^>!<ELB+77@+7$+@S@'Z4 N-<1C8%
MM0F5^N!/8YB/@&5?4R[X)4[/XP\7'R\F\%E&V;NS!0JAN4YH4C,:-9^Z*'K?
M]GY^EDGL/_.&*GR\1,5KKN8=&Q$Y5 TST(7X80Y>#YQ';C/5IL\#ZP6\+@<[
MGS7+'*X\'I!K'GZ^'(WL13.?P2,^Q_"F?YS!Q_B;Y?5Y\\=.VOBZC1.;W:*E
M&+K<P_[6KVX[U'!>MW67*W?Q>GF/.PXW]$^EZMCDS(X[D]L6V1W'5#_DLH=<
M0XX5W]2]-C@L=BSH (>%C_DPAT4V=J_-#<L<ZZ>IUCUGA-0VJR=\11<DE8]X
M[:X/4O_XS2> %H'O0N"7#=:(WD*'M4>=V!W,_'Q=2N/3I^_CI8_]+OO8?^U]
M[)_O\+$'>Q;[,HE]B'.[H[573-&09Z<(?*>F:!N]/HLE>LSL?;C<"?N3/9N\
MJ7Y>[H4M3GU477B\6*!]6W(%XPK&#6UZ=H5QOU[F,/R]RW!XGU(!M'U;7P70
M"J -;7IV!6AO5]*M?EI)MRJHMF^+K*!:0;6A3<^N4.V7/NNS/R?\OCM>]_/G
M>E8\T/U<:07:"K0-;7IVMM_3S.RH0-@>K:BRC3/DV2D"/_R,@B%*?U?VX]NW
M9R#BY9'#9MX"16Z_*ZMC(*OC'F.AAUBA6@^X0+5^XBQE3S$G.B]KF$SC>1S/
M=]5I]"O6R:8FYTFKY*G2WWT1X&'I_;.H^([+^PZ[=.]]0MT5+MW1'-U%8DS2
MR"4I$8]4(BL%181:0GWB+'*[UAP]*HJ#B"@?"D/<&8Z<U@+%R)3 DC@EUAHT
M/>*TX^-J[MY1FT*3R#!A2'*O<K69@$Q*#DG*I:3!>Y+HS=<R,403X'(E([R6
ME1CI %]T2C,2 DU"?\W9U$>6$CZ2@C_\%.=+!+H],1;%,A?+7"QSL<R/M<S,
MN]35T)?&6L2-(T@K+Y'76 ;C<6!ZK0EPKLA$;?*(2I' A&F&C&4>66HH _-,
ME+,[MLR"<H65)BBI?,@<1PP&ED?D*6><)6*]7NOR99U5Q%B'E--@S3E0#Z.P
M14*XP"AS5#BS/<NLCH@6Q307TUQ,\\$H;#'-Q30_W#3':)0,E(#3;, >6:>1
MB2)W*+98,:F95&M5+20XE4H'CHC !'$"+K=V-B"LB3#$2\[Y]KS+VU]+!<4H
MC -I#J/C$<:IG9)("V(9YF!DURL?>26"LX8C%IC(#3@]B"((9(+%TB5NK'!;
M>RUVI+0NEKE8YF*9#T9ABV4NEOGAEID&YJGQ#,E /'B*8&!= */+P$Q9\(Y5
ME&OA;/"FL<YA8D<=>*0R*F298DA@3ZA+E%J_UD-ZV^%L+Z/T*2 1/%A9R@VR
M'&M$B$A$\D2X<VOM]32QG#-X+:=Q+J/%$1AJ@JR("DOCI=\BX= EEEW,<C'+
MAZ.PQ2P7L_R(768J!+C& GF6X]+:P=1(FX/33@NPV43$M;+K!-QE#I893)<
MAUD2@:Q7%#$== (?&F,>=AW+MIH'JB7B0L,X50)CZVE U'.A/&9>XK7F'Y0[
M%C XS$DS!E\$FN(P!NWUPF#C+754;^VU*#U2Y+9R\L4T;\TT;S!O[ZNS*E]R
MWEZN%6NG_K0[^17B>1PU7<> _4MP?7&4ZL'"?M% LW6%+;3I*VF3\DYIRQ*R
M..][TQ"1ME0@' B7.!AO,+G)+W12QG54JT\;".#V)Z*03I2X:"6)?M<I -)'
M1[@.*!G"@=XQ&%T4&BF&$Q?>2NO7D_,PD]@XC8)-#G$2 ]+&1^0#2YHS%978
M7@H >[9H1D&R02)9,;U%80<@PV)ZMQ>QX(HHIP62F@6P-](B2S1#'A.<1%(6
M3,Y:FIH2A%-!$78$3*_/B7<*1R2)35(I+K6CSV6CNBX Z)]QVMR9M("MXT03
M&(XD.0:CD#44(V^M8LJ0P.U:L$)0IH(!T\R3,XCGG12-F0!&$5@ 0A&8]-MX
MHS_]RV>*"7]3S.Z+0K%B=HO"#D"&Q>QNS>SR**))EB-P?7,+,O /G1 &&6V"
MQH2R*-8\WFB#) X,FP6[BW@$MU>;J!$V6(<@F$U![-CC-3I99HU"U"0);(+!
M:\D FD@\(4Q3:]<=>2PH!A<W(183O)9B$=A$2,@F'QFABEB'MY?T7BSOBP*R
M8GF+P@Y AL7R;L_R4L)-<A$%ZCR8* +F!HPM(@1[CVFT9-T]E Q3;VE"E!(P
M4>#E(DV30^"J*1N2UT$]6_+W_0YO8"1*&S2*/#?R=3;[K90@S,%/UT$RH IK
MZ>P! _M( 5&'\W= %$9C"IZRU(PI[CU[MJ/MQ>%]\2A6S&Y1V '(L)C=K9E=
M[14XO)ZAF NJ<$7!UBAKD"-&@$D.)L:U,U<B<>$LD6":<C9=M&"JB6"(^B D
ML9$$1W;L\";&M'8T1\YS#V?M.9A0HA#XZB2!Y16>^9NOQ8 S@#^L$3-8@"BX
M0MIZAVA@D2G@(4IL;^>:/=L)[X)DI9K=_F3%?8BC$2RMH^HDCN/4CKKL.!O@
M\AI6GIW5YZ6RW?#9TV8R<>\OM[WK5;(G4MYD6?/"P+ZVSDXDF!C@74:2?/P/
M.V0XU4A00RR)DHB(UP,?TAE!)?(Y18!3+I%EQ"#%G B:"N+8]K+1[B"6)G"<
MSS]Z83CBPN9D!":13%))PG2*9GV[7W@M@Y7(4440!]J&K-8:V: EIX$X_'P)
M#+=4P".<#OMHPD/*V1=(+%9^:,(N5GX *EVL_%:W-XRR0>F(/(D:<6,,,BHF
M%,#H$V%)X+F?P(V !#-$>F80UMR E=? # )5B'HI; 1CF-*SQ5GNW]Z0+D3)
M,47*TIP?@',A/>D1,9&H)*6/<2U#D46:# $I:",<?,=8Y')8AE*BN2=4</)L
M9RJWN;U1S/M^86$Q[T-0ZF+>BWG?4_-.I)$6'%2D-&:(8\N1PQ3<5QRT8L2S
M&->.E!'IHF?>(O!K34Z(%T@G+Y#DT:MD.6:>[]B)]\[A7( (2<V!M0@P[R:!
M)Z^\<E8JKF5:2V$PA)$0N4<^*IZ+$B3D),WO)F(R0NJ@GBUG?[W @"HFON!A
M,?%#4>IBXHN)WU,3;X4*6*E<,5<GE',CD(%I1-P&Z4C"7J>U.+U17K-$':)2
MY38P8#J-81$Q+BCF@B1.=QVG)YJ$X!)&T6J?#PT:9,%+1T)11CF5QJ6P%J=W
MB=#L\)N@<V B12 ZN2A^M$Y:(XSEVV,NIICX@H?%Q ]&J8N)+R9^3TT\25H3
M$P4*1%/PR"5!+B=#>@\FWDG!-%VKJP^6,('OG_,@\]$ZS"32-A'D#6?8"7#H
MZ?;<W3N*$N?- AP<4B1G"RA@+DY8@6"8VBKB Y=KU0^##TG3E,/YS(*)-QH9
M$ B(@@=I,398;2\9DAQ1*8N5'SHD;KZ2X*J4.LC:7!+E0G993OVM=S$C ^0'
MY53)$(7]".RAQS2#3VCF;A0'0\>&6Z]Y4PK_D%DH9&US9(V:R#"F)A=HB(@+
M0_)/"5%M'';6*NW7BQ\+)4C@&@GF\VD7S)"5(2$FE3<L<>JBVC%9LR(:S01P
M4",X<% 2D=..()D<LTX2$J-<*_S$"68N8L1$S&=GO4/&*(J"5E)2AX,AVPLS
MT2/-\+ /KWQQJ;X8NE9X0.$!A0<4'K#G/,!ZFH]/<&0M YN>(D>&P*^>)8H3
M]5:[M=I&U#,M--8(6]R=N9#(&4X0]1&KA+TA.^_M8(UC--,;K$PNV40C,I10
M1*TGQOD(?UT[P4I8B"FGG23F@3M(H7/E9H(B%RXZ0XB0VVN&^+Q]B@L1&)QM
M*D2@$(%"! H1V-E!2D&2=ICG/ N'N#,.619RDT*M,1;6L;#6I) PJ7%N-!Q9
MYVV#H^W@=\3!^69>YD9)NT[02)AS'8E"B:N$N.<".6D$2IH&[Q)5#*^='-&6
M2Q9=0L$3X$3>8_B.\(A@8X3!40:^O4TI=J3)L^W>%!XP.--4>$#A 84'%!ZP
M*QX OK' Q 0D.H.IM4*6*(QT5)1C29/$:^D.,AC'P6KF:@4YN3/7?C+!(RTT
M8PZ+Q,.SU5U\:!:'BIXI(A!5B<(0'=ATK1S27'++' &7?^V\)>?<PM -(I8#
M#\ R@10L13[R&'VP%DC1]@(">N!5G L+*"R@L(#" @H+.  6X"*WE'F-HLK5
M'(.,R"BFD7$QY+*.CB6V5IX@1!U#Y$C9O(^>2':;X1:!<4\2B_ _N>MH0$C,
MLP">O4N^[_&D4Q3(BL2(#PPSNE:O$]Y5N\!SUF<NANG@W8P(&DD6.>&1"2NW
ME_5 ^1$FSU97J1"!YTOG?$E-H/>9#!3F]6!A@VCSI__QBK[:JN ?8=TW)?I;
MC?O+4/,B[0(J!52*FA=I[ZVT"ZCL"%1>O."+L(NP#U/8!5**EA=A%V$? *04
M,EZDO25IKT;%X6?K1G&;>W3/T9NI&]Q3)%5=$U*_@?-N?A:GM8??0WU^1[T%
M=LP8^^;.B@N'*:P/$1:6'?O8M;"*9Y-1<Q$CFL:1G<4,G>VLK6#AQFDU.XW5
MM0VXZK<1O(&=PG?;MO%U]XU/]>RTLG"%'56GT08/RWY636.8=SMH[7'5[=M5
M]=C/I_#G_,-H'F+E;7M:M=>& Q.'KO_Y:'%Y?GH# X)1Q2F\F^TV(UT<1W@]
M>,;UU[KSR@I$_(<] 4GEMW"VA?' I_"2L(+J]A1^75YIIW"_DW@&8FNK9EJ-
M&@ CF#X[F\^:Z06\X3_F]73Q>7[HIPA_\\W)&.8G=,++4I\N1..;LTDSAHNK
M)N4/VW@Y^NK3:1S#R"[RO:I/MJTFT\;E)=W=%P0ZRL."N]NV&</?+_* Z[,L
M_N.E[@]"N:ZMQ,&MN7N ^LEOO8[4@WOUG6G$1U@&]?@<?LEKYM,T/[A):0D"
M;;=.ZC,8RG)A %S K^.+*M1MOD\]GN?%GS]I+2P)N,H#-;#U."^3C#+5A__^
M6[\$K]_LU)[G;\)5>3/_/,*Z:2. $*S.O':FM1VU5>B1K7OP^__Y]2=$3/4;
M?-; W9KJ+$9  N_C"- EHUV(9_E!BV_9RI_:T2B.3_)O[7PR@6? GV!L<7Q>
M3YMQMZ3AUVYDXS '-+TXKOX.\!27]SJ%!=_!90Q'5<H=!3,,G31-Z%]J:C]=
MC?<(P*(![#BWHWFLXF<?8UB@#;SG_T6?!WD-FN M #OF;0=MJ9EV..)/%R]=
M3^$FDWK:HV2 Q\ 3\N#R5,$<5J'Y-,[WZ*^%KX[J?W;0U(W@N/IXAY$8M<WU
M2?:CINU0/,';C.?)+J^'G^I1/:MC_[J+2<W#&=7CV+UQ[4^7-PLKZC0[M;,%
M/(Z;60^1D_ET @*Z L9!KL<"1=N'HG=+<@$+=)HI "R&&VL;1I!93=:];A&L
MV/.LCLWX!(T 2$+F/S&OK:R W94S^P<LEF;> 4\;I^>UC\OUEK4_9E:2%JNH
M?Z?+RP*LY'Z%5>WI?-:MN,>O$@"9?J' .\;K[[)D"^WRK<[K# ?PS&E,(\",
M[MD $4L(7KQ><]ZS0!AR>]I,08[P+;@LS4?PU!3W@7R4Y?U"EG<V1--KA@C6
M]C13[[I=-1[]G^''46W=<DDM+#3<#:35=G[0N*N;V &#LZ/.M0##G.E FY?)
MASB9Q3,'"X3AHXIBRBX9R/)R>"[8UMXD]U9X8FNXV\4J(N1O'E>W+:1'R.0R
M37/A]BZR- W7C)!\_E+"/SQX@YQ4#A&&DV0X<B'6DD^?DJ7YP0-CF8_B^W2-
M";P=A]][M[+S #_"0WX +^J/5P!(WD[RXH2)Z < +"^&M[.'COI_R5#4[FVF
MEO4L^X.]![U \ELX4;8W^:,Q '9U!G<X;;,6P'=N4:;L!MILHT:CYE-;?6O/
MLE^]T-1FWH*RM=^]OH2"FU&/*X0(]?F3-6HQ,W8E\_?!L_-2$!C$!#0\H\LV
MW_GVD/O.5@%A*R*YC%&>7M9>G=B3V,=]D4TP\-=V],E>M&]>57]^.9KRYQ55
M689NN\CM;3;<SF?-,@,\#PY0)+]+OAR-[ 4PS;Z5X)O^V08?XV^6UX,:C.RD
MC:_;.+&9VRYETL6O^UN_6LVI7@X >&'=V<2+U\M[O+F]5F[_5$:/R3=9H'=M
M!/27D6/QD*L><@T[5GI3]]K<J,2QYL,;%3VF Y05?=*-[BGJK!Y?U/GY3P8,
M"K;>YO#1OFSM/7@'^YGMZ=:%O-6=ZT=U=7CPE*A\G^%P'->,PMKHGF+/KQ/Z
MSJ,9TE'.VVO]#W$"[UE43Y^A F(%Q J(?3E:L8@B_)8#48N@U[L<COAK'X[X
M^8YP1$&Z@G0%Z0K2[0_2Y=V^'_-NWW7>]BL 6^%M!<T*FA4TVR,TNPYB?UGL
M7%X4(-LC("N%3 []1$*Q',,]</.\Y<D..AI?I%S HX!'4>LBY<%*N8#'4*L'
M')K BY"+D ]#R 4ZBE8?E)#OR9'3C\B1\RGAY/<\Z+2K2N!79]'_9,\F;^XX
M9/^TI?+5$U/*Q3R#L+]8QGM8R^!9-/Z)30V>09D'XVX^7*C#:EC E,;:YIY#
M)#?OM<PB%ZA%5JN0N'%4L'3SS)CE!#,7,6(B-RP@WB%C%$5!*RFIP\&0[;4O
MI$>:X0W5\3\, -@3$"T6JUBL8K%V9[%V98>^_?+AY_TRGRIYXJUA2&&>S:>)
MR&%*$)4$<^I,W[OGZ\WG;WVUJ/:79GK-DF[,B'*EBQ'=+B9]-QA,*@:V*',Q
ML,7 #M# 6JE$2"0@8;U$7!KP3VDVM3IXG;P53)*-^Z?P2YR>QP]Q-AO%\/<Z
M5^"8Y>QRNBE[2WBQMGMA;<M>Q18VA(H2%RO[T@*OW&(>-'5(!4P1%U@@'0)X
MCMP[IT.,F*YYCB)Q$CP&;U-;,(8^)C!L0J)$C TVX.3XEUNJ+@S;IEJKL^(S
M;C/PNL$-WX,X9;"K!?WK>H'C0BX&2RX>+.07C2TO-U%X7PE$H Q; Q3 $L80
MIX(!@: :11N5QXH%*M9ZLA,68L+4H\3R;J\4&EFL"8I<N.@,(4*ZK>W<$G5$
MM!A4"_:RRDO3GL%)NVCL0#6VV*7;[%(BQ&-C# +W-D=?B49.I82T(<%9QZED
M?!-V:;-;HEUQ5?3/.&VR1GZFF/ WQ325A5Y,T]YJ['#CL8=LMLJNYP9L*$XJ
M\8@IPM%1Q#T!/7'1(*TIEX9(+OGF?;MGW_4L#E_9^"RQR<-3XCTA*WMH3/?5
M?C&;(J.*(:(T.((*@RVRE*# H[#"*^M4O&F_%%9$<#!=R?B$N @8F6@9\H$D
M[7"";_GGV]PL_M_A;&Z6TZQ?,4MO[^B0.)C,DY*L7+(H!B##PB:VQB8D"2)$
MH9!CSB&>J$-.,X-8<H%A%S3!_B:;T)9+%G/?.D\B>- >(R>%1P0;(PR.,O O
MLXE-[G2R(TUD294ZY$5>K%)1V '(L%BE[<5H94H"8XN2Y@1QJ12RE$N$\^ZG
ML#J8%#9AE?9FG[,L]$$N]&*9#EMAA[O-><A6JVQS;L"$1I&LS)Z<)8HA'IQ
M-DJPHT;X%)CG8% W[M@]^S9G\?;*+F?9Y3PX)=X3KK*'MG1?S1>CD3*#&=)2
M6,09N('.AY#S=:+@3(-=6JM-$)30W!*)6+(.O,:@D7'@D;D4".=!8KC#7NYR
MED5>CG#NSR[G+]9W'=6J^+F>578<JF9V&J?]KU]1KW>7?.+%^>^;2:RXOS/A
MKA?)GDAYDQT@"S?Y2FXB4@Y!*X&893F#&&B)I4PCFUQ43F@+Y&0M@QC^JJCT
M^7)PK:T&=UQ'BP(S"2MF I9R>Z=#-1E4_M5#NE\6H"BV;VC"+K9O "J]G[:O
MQ+@WL4W,<13"$(2CDF!4+=A@Q24B047EB1&1X4T8XF>N$$Q4,<<E[%U,]1 5
M?B"F>K@;T<6,%S/^M5O5T4>M6$2.&8NXP0:YX#Q*,@4F"%AFJC;N3S__B=Q-
M=<XI1OUE&_47LY?]4HSYGE"F@S38^VHC#3=1*LN0R)E<O&LC%P,XO5KAP#'V
M3NJU6OW!4VF\0=+EDE$8;*26B2 ==(C!8 ZV:B_WPU^.1=RC/?-R,O@K9NEC
M,[.CP60OE7C#\V;B7$<>>DPS](1F[D9Q,"1EN!&'32G\0V:A4)A-4A@5 ^8^
MN_G@LG/*D&5<Y^ZX@=DHB.#T)H5QCFD7.$RTP.#KN^B1$4$CR2(G/#)AY9>[
M,FRT'2X_PH0.*J?OBSK\8EA,,9#%0!8#60QD"<IO,,F-1NF=%4A:RQ''"H,-
M3A2)@%-,B7NR?@3[*=;ZV;OO2FZ*R1XBNI4>O<6<%W->S'DQYULPY]2Q&"AU
M2'=[[%A[I#FVR(JH9;"8,+D1<[[M7K]'E&ZJZG4Q[T,P[V6G?6].C1>S7LSZ
MRPMC>\X]CN 3&YX+JT@+CC%W&@EBHLS-@HE:*ZPB#0[2:8F\\ YQ'CQRU$1$
MDXF,)&:E)B^XN?!^V,QM[\4/[:SZQN#@-N$.QS86 K(Y(8-(\Z?_\0H(_S8%
M/A@C=]!J7:1<P*. 1U'K(N7!2KF QY;!X\4*O BY"/DPA%R@HVCU00EY-; $
M/ULWBM]W\;]\@WH\MXL 8*C/OU_&!=_-S^*T]HN_PI?W+#[TY)!<?E5XY?6@
MW[V/N P8+V2WB!=SDZQS(B$E),Z]@STR&%-D G6)!B.MV-#.ZWD<S^,OT^;L
M1[A9CNOF'=<?YRT(.$X_PMU_&#7^CU=5;+V=Y(F<SB,,>N5MKT]MJ-O)R%Z\
M3J/X>75B)0CB_^"V=;I82K*[!K4S.YV]Z281P72=M:^=;>.H'L>UZ;Z:#W;,
M&/MF=?X7]_[*/ #7C,+7:\CM$JG'^:50)YA'/.(+0EN3QZOOQ?%2+5=FJ+^&
M8/S-C<$,0EJOOE]H8?5[],W)N+[6W;#'E^[?2S!9Z$5>\M<TX0'X(N\;XMT(
MLQL-ZR_-CWI=SV @_DXI_E2W]N1D&D\Z:*Z:5"WDN@KQ&T6IA(W&5EB4A&&(
M4ZN1X5&@)#EEB27,E-D$2EU_L_=I\5X?LU&Z&Z)VK"[/<5+P:U=8F[?XJMEI
MK&Y+4]K9Z&:GTQB[HK]C *7J##XX;:L(TQ.J#W$"1L'%:<7P444Q9=V%\ .M
M/L4I?"V_U&C4?&I?KRKZ)F9_;\E(3Y+S\KA-"G8^:Y;;IWD\]?@D#S]?CL V
M-//%.>PW_>,,/@;#L;@>=&1D)VU\W<:)S4UIEV+HPF3]K5^M;D@N!W!>M[7K
M2CR_7M[CCE/""XN&CZ66V:3=R?T79NU88?&0ZQYR#3N6E&_J9F5@^SFP(=6$
M+WGG^^'Y'ZJP+^-:<@MQK4=5AQG(U'P=_7]RZ8>.,?VU)TH_9Z+T[VY:_?G[
M:VQIL*5^+K.SAC>=!PQK^[BZ"O -=FIV WSOLH-8<.\P%EHAVD.=F2+LG=F;
M;6P@%WOST)G+ <=B3_9I(174*J@UG*G9&6K1@EK[M) *:A74&L[4%*Y54*N@
MUL"$75!KJ*A5N-:^+*02<1SJS!1A[\R>$#[0,RN':"Z^?7L&XIVU53VN<FFS
MUHY#NX=EKPYP5=QC'+H,S<$U-GG6G-6=903_-FW"W,^JZ7H&^WX4?1W82;#]
M*?LZ,)U_'O7><?6W(594>(14=X9*=]5V"YH&C!%Q6B%.6$ F<(\PE5(*B:.V
M8NT43**2BB!0$$(CSHA$1@F/A*3.<LU$2OR19_5^'?O1/-3CD[=M&^&_X:/]
MO*G2;YP<$2$'5?YMYSBQ+VA;C%LQ;L6X%>/V-.,64Z+).X%H[@G*M73("AJ1
MH,D82IDRRJ\9-RX<8_ =HXQ#//K\G23!(-I(?;3P,@,R;A3C(X6'5=MTYSBQ
M+VA;C%LQ;L6X%>/V-..FF34B4H*(4>"Y16>0%F"RE!/<QD2YTNJF<5->>QR2
M1M:RA+A@#FFL&=)."14LYLJ[X1@WKNF1(;@8MV+<BG';:Z4MQJT8MT<9-TXM
MSRV:4(R<@Z%2V1]S$E$P:SAI;YR4-XV;E9%0F<T@#_"=&#324H"9LPJ</N&I
MHF(XQDT2?B1E\=RV:]PVN4OZU1O8+WN7]/?FPHYF%UU!I&9V&J=5/?:PZ/8O
MF^ %\I('B_L177!NR]/<^?+8%SEO,B.V\)<-1)X=4=X;!&S%("ZU0,[&B*+V
MD4G%A.!KVZI>&:E5U,CQ$!''W *3 3I#L7?!)\R8]</A+VQ3.ZK/#B67:<0%
M3(J-'**XBXT<A%H7&[E=&QF4H4XQ@B(5#GQ\*9&CGB*O/&<>+"2)=&UWED:J
ML=#(&!/ KAJPD1I3%(-R1G+,A \#LI&LV,@7"B;%1@Y#L8N-+#9RCVUD-"+&
MX#F2WLB\82N1=3@A@2F7T7HM)%OS(PE7"LPI4DZ"'YG 6FIM/9*$J1@93M8.
MR$820HJ1?*%H4HSD,!2[&,EB)/?82,J0I)&!H4 3&$D6$C+$8D1I<BDDK+A?
MRX0B-!K+!4&$V(2XPAY9';)+&9*%.T@KS8",)"[1UN&AR3,<N5T5% AU@YO+
MJSU4\IU?UF;SQV9F1^5 [AZ1GLUDM%P'*GI,,U*%9IZ;"PV&]KR [+B'S$,A
M19LD18YJXDF02$?"$ ],(6.$0$0DKY.+)GARDQ2Q$'4,D2-EHT<\$8R<]!H%
MQCU)+,+_Y(!(43[8:^B@,NB^J.<OB!H54UI,:3&EQ90>A"E57 5IB4"1"PYF
MD3%DO,)(QA2HY\X1NKY1[;U5P4;$(E:(X\"0-DPCZHEUC%EI_("2N;ICQ'Q3
M@?AB2@>([<64%E-:3&DQI3LN-V5-PM)+]/_9>]?F-I(C;?2O=,@[CG$$BJ[[
M1?).A.;FH_/:,Q,>[6Z\GT[4E<0:!&@T((G^]:>J05 @08H4V0"JP9SUS))@
M ]W(RLPG[RD4EAE*J<H>II/9X;0X!:)]PENA^J<L73]DTS(;80I0"E *4'IH
MU@8H!2@]6BB-BLFHM$.,=[!(%+*!)Q2E3=99S1CCMZ$TQ"2CD18E;K-7ZCU!
MSBF/<*)8"$I#DA65AI46::4X0&F%4+J9^\X_V_S][TDVLY/,B=\<)M^\1]Q;
M\>@ORRP28Y]_#^,/%1+D8#KL?\[BM GCUIZ>SN.I762%L4['CYK%66Q^F)WG
MY[PL"JL=9Q&+H;&323-+W5]C?GEV/O9-RCI@-F_SBW;1G-O+QJ84_:(9+]KU
MY[4GS??1VV4;FW;IVH6=+L;YHR[7G[=Y:6/GL4E9M35N/+N8SWQ68>71_)5V
M:[N'R]>4ZZ:S_ WR[>9QFJ];S<#/K]K%<EZ^Q/B\O+.TLR_SW^<+.YXN+M=?
MX.KK_?$/GR@FYLWF$^0W>-N>-6DR^]BN'J80XNI)+ZZ&B4_&T_+-_I_9Q_S&
M^:@Y'>?WK\CPP.?G)S^-TSBWBTS3\?3Z.RSRR[/3?.1GF:[Y4+)JS5\W_["<
MV$SCR]%GJI=GS!=?S";C3B=>'\/'C 2K70"9VE>?D8]P.<EWR@_D%SL@T4GS
M;MK8$,8%#$:-;=K,[>.4GRM_I8O9O,/(!SZS&;<;1%G1O&G/"X=D&"JKN/,'
M7#/!FQ439+"*HVU6;"\R8.7;-XM9N2X3XOJ-.R?%6@55(>/-ID+L0_7)AQ[D
MAO*3ZZJF"M7?CY\U7^:W-1-V?.>OC*J5,&WPCKO<%M#N_&^\?9/Y-_@N?V>7
MKR@&4)'Y7V:+V&1SJCD(PZPN+3=[/5[DT_%? -;"\?[-[_'TO&BH?\1.H*>G
MH]5?PINZ.'[<6;\KO9HU81'4\L @EX,P2GZ>S9OSK-3SZ:T<D2)A14CGQ:%I
M9LOY-?Q>VRIMC"MIDH,1IBL/+@N3GV5E4;[E6IH.\Q7N>^!-:?K-SA?-NW>C
MYMTBGC=ZU*R_3>5$_WD\M5.?#<[F]T56]D6+K5#[]^7%Q:3[W<XOFQ_MPM9Y
M"-F**8R?9>.\(1C]GR/7980^79G];\;;<;I\ICZ[M9NK1UY<QVN:[^W$=CY+
M9S*L7[ZR.-:1G':3M-E]?4(LX3I6=>4'KQLTHN6>2H>B=AYQB1,R40;DL*(6
M$TYCW I5/27K<U=\JH2E%F^GX6]CZ\;9?;E\7V(5[_.-OI_,_#]?-;'U]J+$
M:>;+>%_!_ O%Q_=GQ82<9$^CP&$7Y"F ^"'[Y^T-S+1NMBP8Z>/X0[EJI?%"
MS'[F_-'VKFV+^U.5MOD]7F057MQ!AD=-6?'<?&OO6H'WNF^U].2HSSTZ:6^1
ML'5,<,4M=Q#"+A>S=1BU/$]FK?(-RN5H8B\S(^5;?(KAS>IV!I_@;];79T:8
MV(LVOF[CA2V^^YH276Q_]=&O[FK)^3!NQROQ?[W^C'M:<U9WE>:$&O5-H>)]
M$>;5A>0$8_Z8ZQYS3>81_:@+]_U@Y(01:C;^>=('U[2_]K&S-_O:%/F$Z#2L
MJMUC"OQ85I_71_C#;*J]@=P@"[7(PLZ)_7)U.JB9 ZB9'[/+L](R!+1,#:(
M-F8%AP <?]3*_ZOFVU1R-(>!AQ(QJG86T76U6GVG!5KK11 ;M%:M6HN"UAJ(
M(.U@"!5L-'K:0=W,LMZ;YYI-\V=6TZ)432?& 7N4'H5#0/O]&EQ ;Z#W$= ;
M= OP^@N@]PX6:\(LU-V8J6^]7U4P?:[7JB8D\L*E:!^SFROSSW;#XT_LAC]F
MCOX*JE;6Z4Y-I,X)APR)$G&M#7+"Y%^-IAI[;5.PM\N'I<%!.BV1%]XASH-'
M+G\.HLE$1A*S4I/'E __XUI'ODWY'-^68MCBY/\\F_\PCV&\^-NL;?N;\CXB
MHJ^5X$>B+8:B<P>H$0#C ...BZ.'BW%8,\*D=B@%QQ G7B.7T0T1'Y-.DB1I
MPE:+##8>9SQ#P@M2%FBF,N);H92<2#%$BLL$F,HPCL@1Y0HP;J\8!YM*!N.=
M_WB[:>K;S:Y8Z_U\F7^<7'6SC5>M5G]Q\^;/5SRP^=]9F5O19#GSRWDW\6/S
M?5?S2_*M,VG;&+K1*R7)VLTHN.\CW2K)U;1G,2[:/T'\;0A653^SKPZN)RNV
MJHZ9HX=K57%O'&><(D-9F=R."3*$$H2EB)$I;#2+?40.UDK[:M)";[;2B/=F
M*AV)"AB*(AV@F -P 7 =%T</%[@D%D1I5\9=V(BXC HY(26B5D?CA!%>;4_,
M>$(X8$? 94:2U34"_> J8% ^_MY:GX[3AU\/W)JO!F[].[O383DO,U0NXGP\
M"V6J9VR+EBQN_F0U#74Q>V)1Z#$'=&LOW +:5YH> GH#O>NE-^@6X/470&](
M.PW&9"VC_ES,CSHMMNC6Y+ZKK ^$&.H0K!?A,4/0#()F7Q4T"\&X) 1&V'.&
MN!$!::((\I('*D-RGOA=U8E>CY?M*X0F1\88"*%![@=@;-A<"S &,/95,&8D
MP380@SBU$G'G-=)")"2P<98:DJ+:@K&^2D%[AS$V8@8#C!TL$W2]FZ_"!76'
M'E4.Z_ENN/^+U4JR6;KV^N>?%\:,FJP7)OGO&RO(RB3UV ETZ25MEY/%=5&I
MW>XQO7LE@%O/3)E-[]Y\=D]YZLTRU),;HG 7IV=Q^$O'\7?MIW#.,D-M0$G(
MK':+"M6,.^2T8EI&9R1+?>RG^.ML%CYF,KZ=AG?3A9V>CDO-?5E0T?XX;OUD
MUB[G7UA-L;&3XR9WAG%[,;&7K],D?MK:;7(E9>O#[BY"[<+.%V\Z1D29R<[;
MU\ZVL>P8W&+9SRRS*1F]\?#7;C^YFX/OIL=X6KX1ZLCR%;?X L6VB/'J.WG-
M?!OG<S4"'^-O;CU,%=1Z]=V:$SNA_,R+S8H9KZ6IDYC^D.(YNW8.P&JK2\NM
M'EJTLR;GIAK*BB9^ZBKW#[___6"X0OC6:I"_G%WG 2[L:5Q9<LB6SJ/7=O+1
M7K9O7C5_/K21MM_-P=>,<O?:I8?$YM7=L&:8U]$17-9[E^IG'9'6#B.B+-6>
M,FW25O7S4V#M=W\6PW(2?TUK.;@?PV"]TI?7*\WC56E0NVK..<N:.5ZWZMCY
M_+)<^\%.LNV4+;73M1[/7EAW257KDZ89\)KS_.M9V\1I:6$:X$*EIVB'!W'N
ML=KA.+8IZ7Q7(A^UM,@PT=?2(GF"^4X6%<%,S;W/U&SLHMG<M= \?49M7T'/
M@Y\)Q.PA9@\Q^SIB]IQXYA1G"%M:QC=PA9PG 86,>]@+@0/?-K6?$+-?&]@]
MA>>U$"-!&,3GA]ZI 65QNY'VM_Y?RVSL=I*>W:V?)_'3]^-9>]F.FG=3?W+8
M0M.#2TJ-%@B,A(%:Z*.U,JC!S&B+$HT:<<<]LI8&I(CS1OO@(]VR,@*U96%O
M0(;8;&50QI#Q*B&:/$G.,!NCOC=/5;3?/(8?N^:UW[K>M;X* _B("0%CH 9K
M>$ ]_DX5P-^C+<G@\S*T:=4TVMA0$I/=*ZOT.'NS89! ,*0Z4P3\(2B[_;(I
M<C#U\NU=>:+A&D:44)JXERBI;D*TLDA;[DI0Q0EJ+0[<]6D8_;:<^S/;QJM1
M^MDX>GNMG+]B4F:;&2/_]("IQ#C$9_8=G+UWKB'$;@9C0OVP/%^6V1H?8K.8
MVVE;?LX:X[,9!=&;ZDRF?CRYAU=]'ISX0Z%SGTM5P>PZ,K,K1B6I9!%173I5
ML)'(Z,!0)(1&:S2V2O=9-_WS;)Z_V/2';IBQOWS_6:O_U8ZG/4XI%YI6%9IZ
MS#[<@ZNTH['+H&2GKY*=[7(_"%-59W/UXQ;>5%'TA!8=%6;+4K=8C=7U NIZ
M'G,.-=IDP[6".-.4&(X1Y=D XC2R;-%8@1236&83B DA^Q@[T7?MCS0C*OJR
M<_:@1.JQ=/::J-M#!^^Q-%2L\M1-M/ZL5.LLNOZ*Y7QQUOQK:>=9S[7EY5(Z
MW!DCI.M^RS]DVV2U":7K/>W^_R26+M/QHK2[3I=VTMBVC6W;!7A7';"S]5J6
MQ5FV=*X;,3[:MIG.%LTX?U;)G7=;6_*'=L\S:V-S&>V\/6G>?VYV;<[6[RDG
M-4[C_*[R\A__P/B;1=:6I[%\K^[7IO3-YD?(5,U?,I]M%J)%Z:V]NF&7'MQL
M#+EJ'5F<S>.J!?<Q31DG?7=?'&WGW[V]DU4^;=/WN1Z+YGB7OVH:3\O])N,/
MG=1>GZOMSK6Q\]*=]6$</^8_EW:K#8'+"F 2;;NX4A:3RTZ^\QN*9+L8IW?V
M90W7Y$DL4"PE0U*Q;+Y@S) 3EB#OO;,R.D&]Z"/P\^Z:Q+^FVQWS/W4]DUDO
M/F@7R1MVD;QA%Z$V^F(;%3NEC=-7WTUG]UI$57#J+3U_Y\R$;>9=MP=NS1\_
MJ>O+;>JG7GMALQ7.G,8.Q: 2XEHDY)(6R&OCF,?9]K;T.1P[/XW3C4;8GSM=
M\K>B2KIA#VOMTKURFY/?%_L.6F8?IZ=O<?:HF<;%J)L-,FZ+R79M]ZW[:K-N
MKHK'MZVMNGM=JU &Q]$'*_ )5X_J73VAE/;4!VM."#.;__357_O"GE&?]/=4
M&/='.:D?=<^O;7+67U_(TF>)WEH3/1CHT3L=G/) O%X/.'4/Q/Y,[.M]#(3O
M82'#5Q5-5'(VSPMA//7H^LH?[N'DKJ/3]9W=0>0*X*76DP%B'PQ>]K'N!]#E
MT4,0Y[.V7>VY_^%JLM;JM_\NX[4 :88D8J#/0)_5<S2'T6=OO5^U/,2PTF-O
MSV>9HO_N*F1!G0U)PD"=@3JKYV@.H\Y^B0LPSHY"P$";@3:KYV@.H\W^I_NT
M:\LLD].>QM4O_]7&M)PT?QNGJQ>^'4]798+WMKN GJM,]"#<6>O) +$/ETW#
M^UUO7@GE#P,PW[Z]:XX^2$4M4@'$/E8C& @/7%Z9O0G][OO:I/;S%[M&7C]-
M6*#??4\0\&Q"GX]#F,0736@@[B")"RIB3RJBXOFCQ\S80&]0)*!(@+&!W@.C
M-R@24"1'R=A [QU.T7Y9T:L>EU!'?S;--S^]_+Q5),0/<3*[B $F9%>GC!Y-
M7!CB_\1)C#O(5%2C[K^"JI6-'*+<1!NH1MX(B7@0%#FL$U*1!>4I4X&:VP-<
M%)'12!*12%XA[JE%5N3WL* 3S9@>8G2W1P[]?/^<EJY?J*?IBQ3C$=&ZJBG3
M!U<*0U&M.TA1]D;7)^4HZR9WW4P+2'80)(,=#OW@JI54)T(3"AP'Q!-/2 ?6
M[7# 5BDL/"$[QM6-OK7-CK6>D);C$39]K3@'G?7\50W@/ +DUL^^ +E'Y#SJ
MY T69>:G8QGDM!3(>>N0##(FPPGU8M?.XR]QT=?J;%D0#79G'Z/K>' Z'B%J
MU5)%-A0J/E"--W!D>G7W?&A/?+!&<T2U2X@KF9!UT2)I'>/*XXP9?+<(L>H"
M+4V@VP/*PW)>^D%K<8&)O&;!VSM)0+Z'D35]D37__4G ;[;\T$*A3'7&PI$L
M.1\*%<&-W:,;2VPDCCB/;(@"<2,L<HICE+!@G@N''76WC928M,_6C$2")H)X
MLAXYXS'"2ENC'/;8R$/E0#FN:OL<"'WO0@_Y3V#:2J@X0*2"'&=/N,E4(C*5
M'*?&B'/JRYYZA:1,0F,ML4U;SGW/N+G;'"<@Z7 2G.#]U8 &=;/O4*@X0$P=
M+HI1S$W$C"*=-$?9W4O(,2Q1T()'CZVQCNT8Q9Z<Q.QVKZ%_Q_FL<&9I,^!O
M +&.4.0/3L<C1*47D^#8SSB1@:/2?0G,:*@VD2%%;48'G=6MD=HC["D/+@,%
MUF&WZ#"@!*;N-7\)X@U=GP/+7_ZP;/,#QGDSCY,N$-&>C2^>F,Z$VJ<:JG;
MNH6JW($YM,%JKH7N/%B#.)$4&9)_32P&K;CGENMMDR422HA"5&"/N-0":<L5
M4ERE8(WT0I)#I3.%&!$"G29'+OB0T@2FK82* T0K2&GV@YTJ1FJ\PTAKJXN[
M'Y'VF"'/L[]O/'?<;;5M]HR=NTUI*CTRU "8#B2K"4Y@#8!0-_L.A8H#A-4!
M QDCS&H24#",(QZD0XX0CF@0(DFO%4MWU+3V"F0]MF8J.2*: VH=H=@?G(Y'
MB$PO)O4!K9E/SVP2+Q).F"!MB$6<.I41(C!D/#6"66=(R5+N$B$&E-DD EHS
M!Y[:A-;,YPVTG=L0\\/^$[HSZ[,7H%BOBDHH\&1WX,FZ$'CT)J"H3$+<A&QS
M$*^13HQS'TDR'-^V4S15WCM.$2=,EXY.CRS6+O]J;3(F&!S,@=*9:J1P7_%7
M$/M*Q1Z2F<"TE5!Q@%@%R<Q^D)-SZ[7B!'EF,@IBSY"6V<UGS#CJK0K)[!HY
M=YO,)",I^BH,.A*U5'$N$SS &O"@;O8="A4'B*K#Q;$,5MYI25"T*2).M4':
M8H^4"#@(%9FC:L<XUE\N4XZPD(!91RCT!Z?C$>+2B\ET0(_F,S*9&I,,! 9Q
MD13B*1*D5>1(.D:<H,X9;7>+#T/*9!IHTAQX)A.:-)]U4+\NSN*\&5]+,/1G
MUF<V]%.CY_+5<7Y-B!-QL6C:V60<FC7;'9SX0Z'S TS\,*4';GI4YA)KHJ/!
MUB%L3':)64S(&190XIC+I*R0=BNT*P3%BLF$,&;93.*!(^-X=J.9TC&:R+0_
M5%*4C3#MRRG>N>I8W0 S4![0!5HEN0$3JV#K86(B)%_[06B/)3/,.21UY!FA
MA416.8F<)9A80V7T=,<(O>/AN"/&*&#V$25HP:.M 54 O0&]7Z!'&RC6@62H
M)-I[Q!,-R'@F$1?"YW^UUW+7'FV/25Y35[/J()#Q2!3'P>EXA.CW8M)$T-#Z
M]#2P3CS02")B:M6<ZI!.5B(CN T1>R&2WRV"#"@-S*&?=>!9X*O,^R:ANO?W
MEQ:^HEZAU.JC*W"8]]GQ.EO829,Z:4>3(NX;2>/&=B8C5)Q59VI 4605%6=0
M";T#)YD&F9B0!@6M+>+1A;(:/:#@23 ^8:>VMQ%(@X-T6B(OO"LFCD>.FHAH
MRN8-2<Q*?:C1OES*$550#7WD@@])76#:2J@X0+2"A&Q?V$F<2#ZA[.YG5]\R
M@W3@!OE$HQ2$>KF]K;1G[-QQ-RQE(\H5H.E TJW@!=: "'6S[U"H.$!<'2Z2
M:<PLCI$A$XQ$W%.-M,B_1AR\HY@1XW:-9/VE2ADOQ;\P$>D8Q?[@=#Q"9'HQ
MN1+HB'UZ*I1&0Y5T%NE$!>+1>F1#8(@DB8V6DB:^XSCA@%*A1$)'[,!SH2^R
M(];-)J$/_G^7O^87LYROH:#J4%9$)F7YZW^^HJ_V6A8$(7L@][&0&Q)2!U,L
M%8=_7@BK [W!0@%% HP-]!X"O4&1@*MS5'P-Y-YY \#+"GK!0JMCTOD[SN-"
MM_R^F!BZY?=; F(C\YXYADB@%'%O-=*$!&058RIP+'%*6[V.)#"5+\CO*8-N
M/1'(:":1DI)8&1,FFMY.\'W.#=Q9!O+3)S]9AO'T]*^S6?@XGDSZ6I*%<54%
M(= _OS]5 K9B'8P-" D(>3CK_(]_^$0QX;4*!VA]\((J(B[H^"J8>)@Z?KA>
M$"9$&.X\PH)&Q)6E2"NE$+/)<ZL<%RH^QPN:G\;I0RY0?Y7PX/2\7,UQ<#H>
M(?R]F$K:EULI_S+=DQ?#V% B7@W#KX9A]33_"LHE:LC9?U&YW#3^Z DMUE^8
M+<O15^,V[J.Y_S\.6SGQF'.H$9F'ZU1*&[25,B!+.4:<!8:LPQH9PKV)@20A
MMQ8W/*5W[L[!6KM*J)5)6Z:W25M[4#'@84+[0]7D_HK0":#GH9A^J.@),[]Z
MFOG%;9":,D0#+DN8<$(FBH0BB]HX1[P*\CE8_I@ \9"&?NU!^]4#[!6/!@,'
MN5Z(!P>Y#H@'!_E0#K)00O.8$*,X.\C22.2X(8ADV)1,)XTEVX6#_$M<[,H]
M+D/(5&]#R, ]KE"9 U)"Y]TQQB& W%^?2\P_VZQ&[UEUPTX88]\<9MG-_FA3
MW5<_F)7S[G92<]1,XV)4+)AVW&:WO9FE9G$6LPDQF<P^9NNCL8OFQ^CCN8OS
MAI%10S&EKZNF[D.,1?MBK+6(=1)V%Q7L<C%;&S?E>3(]R^.7R]'$7LZ6BWR+
M3S%KN>YV!I_@;];79QZ9V(LVOF[CA9W;15R3H3.Q5Q_]ZJZ*@0_C=NS&D_'B
M\O7Z,^ZI'%C=5> 3Q<0WA8KWZ>S5A>0$8_F8ZQYQC3G!7/?T62_AN4AF#<$K
M?+!,,*WQYW\>=?^M:QZH?M'[+'YY1A))']*8T$,TW8#8][LHA.]AS-!7U?%7
M<C;/&Q[ZU*/;LH)JRO?=7;)>W]$=1*P 76H]&2#VP=!E'S/L %P>>W)=1=Q?
MW+SY\W<_V/G\,GN*J]_^VTZ6$9!F2"(&^@ST63U'<QA]ME$)M-)CF_5 H,Z&
M)&&@SD"=U7,TAU%GO\0%&&='(6"@S4";U7,TA]%F_]-]VK5EELEI3^/JE]4N
MLZ8L,UN]\.UXVI0-9NV!RWM!ST&X<_ G \0^7#(-[W=G1R64/PS ?)N]_>5T
MT389/!9GLV5KI^'0 %+?V8 *>A'$/M36H!=/>"!V%?8F+/KX2M1]<G7OSU_:
M;-L^<;4MC/W;$P3T-;SN)1,:B#M(XH**V).*V#9<JFD2/F;&!GJ#(@%% HP-
M]!X8O4&1@"(Y2L8&>L/@[>JZT]]'?S;--S^];%9#Y]F;)L0/<3*[B %FIE2G
MC!Y-W"^.T#LX:8]Y<EC%ZOXKJ%K95##*,2<^!:2]+F.SN4?.486\]BI10CR6
MY/94,.P)IYHQ9#E+B',5D6-EE:W% 6L<HM?R]E2PG^^?M-GU"_4U5]/@$9>L
MCHE@M2B%H:A6&(4-2 9(=E@D@Q'6_> JQI9$K30R3&6,-#IEM$P:!6V5DI9'
MI?2.<76W$ZP9'AE# 6CWK;-@-#5 [H#9%R#WB)Q'SPPG05DDN=>(1R>14<8C
M3IUAC-"HB=HQR/6WQY<(,^** *(=H>MX<#H>(6K54D4V%"H.<$_O5Y#V&B)^
M69['^=A?(41@QG M L)$&<2=#4A3S) *@F!L: QRQV[0J@NT-('>T/^HC?YU
M6,Y+/V@M+C"1URQX@Y:'@: 7(]]0\U]-$.@W6WYXXGIB*)2IH5@#[-D76O(R
M8#<V2&^T%,@3*1$WBB-=O%J-;7)6LH1]O&VD1&]\B#@B::TMVY0<LL)%1#@S
MR7K%HCE4#I1RW),3"T)?J=!#_A.8MA(J#A"I(,?9#VXZ%AA7*B$91<9 *S,&
M8N*1=S8JSSG3#.\8-W>;XP0D'4Z"$[R_&M"@;O8="A4'B*G#13'E,?5&"!1$
M*CMNB4,Z"HQ,4LS0Z+W;N??WY"1FMW$-_3O.9X4S2YL!?P.(=80B?W Z'B$J
MO9@$QW[&B0P<E>Y)8"9+="(AHJ"U1]PPB3(MLL[G6@=NB(V$[A8=!I3 U+WF
M+T&\H>MS8/G+'Y9M?L X;^9QT@4BVK/QQ1/3F5#[5$/5#EBW4)4[-(=64J:Q
MI4@PJ[*A(DGV90U#2E&>O)-2\:V63NV25T9H)!G)9@Y."3GN\WN,3ERR&$BB
MATIG"CHRC$-=[G$+/J0T@6DKH>( T0I2FCVE-(.2,>* *'79=5?"(<.=1$2Y
MX(P)CIA=8^=N4YI2CH0P *8#R6J"$U@#(-3-OD.AX@!A=;A E@)FCA.)L%(L
M@U(0R"CND58IEKAU_I?M&,AZ;,W4<L24 -0Z0K$_.!V/$)E>3.H#6C.?GMDT
M5DHK T$^^JSM148(+05#T4D:<79WK-UJWN\7(0:4V20"6C,'GMJ$ULSG#;2=
MVQ#SP_X3NC/KLQ>@6*^*2BCP9'?BR3IF'!,HR6 0EU(@1T5"U(I@7, VW%&!
M18)*(0G$D\3Y/U8BFQ)%,>&@@DV6*GZ@=*8:2=W7V#P0^TK%'I*9P+254'&
M6 7)S'Z04RM,G8H>>9%!DQ-FD66!(6XU-XXR1>FND7.WR4PR8J2O7.:1J*6*
M<YG@ =: !W6S[U"H.$!4'2Z.)>53D(DAQBGI.F^0(\:A9 SU3G.7O< =XUA_
MN4PY8KWM)P&AKTGH#T['(\2E%Y/I@![-9PR9E29$S!BB-CC$)4W(!DV1R*K>
M,,8(26ZW^#"D3*:!)LV!9S*A2?-9!_7KXBS.F_&U!$-_9GUF0S\U>BY?'>?7
MA#@1%XNFG4W&H5FSW<&)/Q0Z/\#$#U-ZX*9'92ZQ\DHQ[S&2+&67&!.&3%3Y
M6#$G#&O&O#*W31[!/&41:\2%\Z6WA2)'-4%6>\ZBY%I0=Z@>SY$F=6U>^0)#
MKVZ &2@/Z *MDMR B56P]3 Q$9*O/762\J UL0(Y23'B-'#DHF=("V6U("QA
MN164Z!FA=SP<=X1Y75,9!H'9%2=HP:.M 54 O0&]7Z!'2S@GBCF%DL &<>X$
MTD19Q *.&1<)X4SN&"_[2_(JJ0 97ZCB.#@=CQ#]7DR:"!I:GYX&CIHRQF5"
MJ52Z\JS3D,5*H6@EI5A*G-%BMP@RH#0PAW[6@6>!KS+OFX3JWM]?6OB*>H52
MJX^NP&'>9\?K;&$G3>JD'4V*N&\DC1O;F8Q0<5:=J0%%D554G$$E] Z<9$LL
M\8D3%'BV5+C4 EGF.<*1&!=<J7?;,G$<-AXG$Y'P@F0[)QM(QHCL9R<G4@R1
M8G:H7E@N^(@PV+%VY((/25U@VDJH.$"T@H1L7R53@="$'1(I6<0-QT@K;5#2
M)E!)?60J[!@[=]P-B\F(B+Y2LD>BF"I.MX(76 ,BU,V^0Z'B '%UN$A&F4R*
M>XVP==D+C"%[@21P9%@B-(0R+"GM&,GZ2Y6RLMY%24"M(Q3[@]/Q")'IQ>1*
MH"/VZ:E0HB*.G&(44RD^32$3J>0VN5,\466XVIZ8T"]"#"@52B1TQ X\%_HB
M.V+=;!+ZX/]W^6M^,<OY&@JJ#F5%9%*6O_[G*_IJKWU8U6!AC18<T'OP](:4
M%*B6%\+J0&^P44"1 &,#O8= ;U DH$B.DK&!WK#4JKX2?UAJ5:_FZ2>7"QWS
M^V)BZ)C?;QF(B29@EPA2R2C$<6D&\%*AP$(R@201?+R=Y..!>DVX0%ACC#A7
M#FGG'7+>!D>UE)[8VTF^S_F!.TM!?OKD)\LPGI[^=38+'\>325\]]+BNQ@#H
MH=^?*H%(;1V,#0@)"'DXZ_R/?_A$,>&U"@=H??""*B(NZ/@JF'B8.GZX7A"1
M/E"6.'+62,0CD\B0*!#ATG@<)?/6/L<+FI_&Z4,N4(^#P\#I>;&:X^!T/$+X
M>S'5M"^W6OYENB<OAK&A3+P:AE\-Q.II!A843-20M/\*XX^>T&+]A=FR''TU
M;N,^&OS_HZ91U'>?0XW(/%RGDBL=L18.L:0CX@YG!Y%&B3"ETK%H)6=;3N53
M^N?N'*ZUJX1:F;:E>YNVM0<5 QXF-$!436Y 3T#/X_-KCVSN%U/>)FT3L@(S
MQ+W)["150E@YBPGCR7KV'"Q_3(!X2(._7A2P5SP>#!QD@/BAL#A _ MSD*FF
MV'*!$<TPF1WDX,HP38><(3HE0JE+SP+5^QSD7^)B5^XQ$VPD>QM$]J)0="C*
M') 2>N_JZ@6#WKO#]=[EGVU6I'>,_0KC#_>LP6$GC+%O#K,(9W\4J^ZK'\SZ
MV?36F_CI(D[;6,R(!]8"-1]MV_S'<<51HE&.:Q*0LE0C'K5'VDB+F) QV*1)
M<EM39UF(.EMV/+\G>L03P<A)KU%@W)/$8OY7WC;Y-DG^:[IM -YK[,D;QIYX
MJ,[N1-QKZ%7!>$V^>E*(;Z?AV#C)*D9C8 H)$07BU&"DG16(Y1>3LDJEX+><
M!^^M"C;FBW!I=@LL<Q_3B'IB'6-6&N\/PDGRY'Z7H2Y.*FHK6G_6S%*S.(OY
MWWF,S7F^\*QM8M;HH?D]7BSBN8OSAN%10S%E'?_E'VA5WVG4S&-[$3.U/\3)
MY:@7(=D-O%8F>HP&GV4G(L^R5N9,1>0LHPC+Q+Q,Q 2V[;<[IEW@V005."MQ
MES6Y$4$CF3^"\,B$E>H@HD?IR?U![RKX])BU.%8F1N^R/2!LM@=*);TV1B+K
M#/-!1H?5UHSA$).,Q6A(W&8M[CU!SBF/<*)8"$I#DN$@K$3,B1X(*]U6X]/Q
M]$M:O*XOL>EE9&K'+I87#U^&<+CATV*#)"O']"]GUT6N%_8TKCQ_9%-^[-=V
M\M%>MF]>-7]^0;&J.QGEQ;NF0['.3IIGXMX],^XM5@Y[FQ&$FYB]"*XSEI09
M]S%A5Y+^A),^3)DO[?/:@*:?5L&!]R6D]#[?\?O)S/_S51,S'%T4&9TOKX9Q
MC*?+&-XN'OL5_C]2"\.];0OD5,5IV_[*J,/$'V;G^?$NNXB-7[3-8I99TL_F
MH?MKFDTFLX_CZ6EC[PKOC#/&+A?+>6PN,KO-0MM\FZ];3O/GY#\MSF;+-HM=
M^Z?7G]'L[KT!FR1Z=2./%,8?GBP(5SQD-QWJQ_)1==IS;RBRCOEV(=^[J&"7
MB]DZWU:>)[-'>?QR.9K8R]ERD6_Q*88WJ]L9?(*_65^?^7]B+]KXNHT7=FX7
M<4V&+O*]^NA7=S6Q?!BW8S>>C!>7K]>?<4\SR^JN&I]0K;\I5+POB["ZD)P8
M3AYSW6.N$2=*/>W#'FC>T?OLW7E&#:P^9 FL/H[$TXLG]J$RK)40_GG+39YZ
M+C^UB^S@+V( .:A #@ .:CT9(#; P0N @TV''42A E&H$!'Z&975UUGUOR?N
MJ0?Y\VS>14_^;[3SMOFIRS3\&/U5^(6,#BM/CQE4!#)W(/CYJIEHE1S-@?R5
M50P29&D@L@2['.K*AWT[C^=V/"VQ_<WRIB>VX!W'B=18V=[/=,*#D[;BWKH=
MC&*OIG=@P$53P7&'L48N68,XD0X9+0(BRA@;?,"!;15-28.#=%HB+[Q#G >/
M'#41T60B(XE9J<GSDM:_Y)N]_Q@G'^+?.W79US#3D<!]=:4?B<+8N=J%<7DU
M&23\0(9\%82OT>[HIRWWX*0="A7!MMBC;2&UTT0&C;Q2%/$@.;(V6$1U,I1D
M^T*+K7U0N[<M2KCP_<=93R8%-2,A[J_4!F50NTUQ'"[U(6T* ;&,NFP*<$VJ
M&%$/-L4.;(J O5>16^0PYMD^L 09E302& MIA34,RP/9%"6\VY]506E=BU>.
M7QU I*(FJT)"I*(NJP*<$XA4'*M5860@F!"!F P8<14U,D%I)*7PV49PWCAZ
M&*OBY]ERWI]100R%4,5@C8KC\)@/:50H"%74952 ;P*ABF,U*AAVR@8ED-&*
ME5"%1I9DRX+XJ"@1D0:Z-55L3T9%OK9'HT(8B%0,UJ@X#H?YD$:%[H:>+,YB
MIEN9B0.!B[ILC%U,/H>%]94T9X"=\OPYNC@:+W4^1^VZ,@V+;/ 614,]U5J1
M%-W^[92W197V;:P0/6*FYHT*+W6A_0["))N$ZM[?'[1NCNGI/OIEV3S=VF6(
MI-1EY?3C.\$"J3J:7&"!U-YGP%O"C?<)2>],V<HHD;,Z(DLTUXY38C3?L17T
M2USTM3J*LQ&F=85E8'74MJES8^/+YAS%]<Z7.S?!Y#>_%  L7_4YLRFWAK1R
MFSR)SB*#A40<6XZT< Q9X8C4*@CEMA>I/V%(Z^_+BXM)/,]?RTZ^MQ,[]?'W
MLQ@7/XY;/YFURWEL[QO*>F,:Y\WC#>/V8F(O7Z=)_+1YN#(3XW^7[6*<+M?4
M[*Y![<+.%V^Z@T3YR,[;U\ZV<3*>QJTC_WPFF_,W=S7TXXDL<C<YQM/RC5!'
ME:^XQ1<HMD6,LJ%ES9<;QW,U9Q+C;VX]3!74>O7=#[-IYTR6B7/-%1\V'2,V
M/\:%'7\VXU?JIOMOKP*'@Z5*4H:2D"3CJA;(FE"Z3!UFEC&.^59IQ9,$SI_%
ML)S$,I'_0_[RL_GE#\OY//_TQ0G(_8R@??A\]CE0Y\&G65U:;O5ZG/73V-_+
M/VM:CF,[:J9QT?=2K@,3KC^C\C:A"D>WXW;1KK<B7,]X?EWU8C.8?_Q5\X\5
M.2%4/&K^L:*TK_G'^$211]UT. ]6X=PUF"@$Q#[^46CU$?XP@\[NW%$$LG!H
M60!B/T3LM_-Q-F%!W0Q+W=0SJ+2^$ZEQ<"(8H( #+X;8,(NW2LPH T6K+<V#
M0;R@M4!K@=:Z2VM1T%H#$22P@FL]&2#VP?!$0EQD;VCQ[=N[-MN"4%0@%##*
MH)IJ@W_8CTW9(EE"O^UA*Y4/?@C'6XQ_<-*^@$)[**+OLXA>&9<"<Q%I82WB
MF.I2N(<1T01[KXWDNI?IC-<E?ED1_GVM!W^)BU_3/V(;YQ]B7QLC"-4C;6!G
M1$U]QH!<-1"W;A8%Y +D^BKD\B&ZC%T)81<TXBY)Y(B,*$5%F39)2+'=%X*-
MQQFED/""("YD0L8(A5)R(L40*6;\<,C%S8BSOC83'(E:V+ERA<D\U?C(_S.;
M_S-_6W0QG_G8/M%+[BN$=/!CJ-'6@!FBE8;^P9YXMCU!8S L9B=8&YR]6IE-
M":V<1SYFIU@0;&CHUQ,NZN[=]+>5LMN%02%&DO6UD@ DOR;)/S@= 9R 10&<
M]@=.C@=.%;%(<"HS. 6*7#>>5G&:*-:*VM"KL[MS<)(CHAF TV!]7<@'/^N@
MRE"A]BR&)CN[8>D7D!.NSZ#8Q10E&$.[KQ%L,(9VUT8)QREZH1TRH43@-9'9
M*&$<)1<4YMEW]JZ7 6S71LE::?YU-@L[,4J4'&E>5P0>ILT""@Z#N(""53 Q
MH.">4=!YB846R'B:43 XCAR6&!'.E);8.&ZVAK$_RS7?.0IJ.I*BKYGK@()U
M^N]7,9--0L',]=YGKC?C+XSC@[Q!%09./]%#F,/^O"*[W;2.PASV/6RC84(3
MHS@J=A#B40KDB"+9KU=),!=QHOV& ?J;NDX)&3%5UX9=F+H.B#@4X@(B B("
M(FXAHN31ZN0TPEY&Q'VTR H;$#?1).Z2BT'U&A+H$1&9'E&E !$K1,1[]Y!L
M[1OI=R& ]DYX*QTBS'K$E:3(2N61\9)Q(D7^WW:$ZPD+ 7Z;SRXR US^-K'3
MQ=MI^.E?R_%%6<CQ/NYR%8!\Z+ &N@E@3<Y1TQ&TVWE[3=*^1]H?EHC]*?3/
M1+NX)EI<$VV](@ V!!SUAH!\5Z4>-8A?K!;-]#.(G_>U(("=</.H>^[TN6 P
M5:UC8>KQK/LB[A.TWK&,-:R/IV$;0'5'<L1J!H@-BN>@B@?V E0F"F!XUGHR
M8'@>D?Z'>=JP!0!T%  ":*VCU5JP!6 H@@0V;ZTG S8OS/P_.FR F?_5ZAN8
M\5!-+<'?LE1 0VMUU:U',AFUXLI5&)A<8U6J%5XKF1P*SCC$M3/(Q,20MX0F
MI:+':FN&U%/Z-(K:ZZD:U8B^YA<>B= /174"+KU8%@5< ESZ*ES*$(,C3Q0E
M0RCB(EFD/4Z(,QNMP8P;8OKHEN@1E\@(X[Z&%QZ)V.]<><*@_FH<V^^7XTD8
M3T]A1']]5D0_+5<')^U0J B6PAXM!<\8]YH0I$G(WJA*'!G,';+1^VP"B)""
MZ,.#O=9O;Z?AW?G%?/8AEO:?]J_S6=O;MI^19'6U68+, RP=GKC H@!+ X,E
M9IW$B49$O).(ZTA+8-4A3YWA)B7E0R^;Z/8#2\(8@*7!>K:0LGU>RC;:-I[-
M)J$9;P@8!,NKLR<@:E93/@?LB5[M"249,XHA:3E&W!F1/5R:$&,B:&F$9([V
MDJA=*[N=&1.4CPP5$"@_0I$_.!T!E8!% 97VATI.:\M8- @S'!&W7B$G0T*$
M!,%),LFEK3&O3TK3[AR5B!C)WH:^@LA#^G9@3NZ=0^ @3EZ%!0$Q,XB3'ZL%
M(;W2-F6[00FM$3>:("<D1=%S0YQV1/A>"I#_;OW9>!KGEYLS1/NU(,A(]N;7
M@LC7)/('IR.@$K HH-+^4"DFSZGV%F&;LE\KB$8Z"H,"#U0&HC#F6T5%3_%K
M=XY*AH\D@97JPW5K(7?[K(/Z>3G/8K2<QU&3LH#D']IN?/<LI;&/GZ=X0]R\
M.OL"@F@0-S]6^R(;$2)8%9"6V;3@7'!D#0](\.SRXFAHVHZ;/\7KO59_V;[X
M^4K_]6E>Z)'2=2V%!7D'2#H\<8%% 9(&!DG>"A.85\@K45*Y(2*=@D($Y_/B
MACOE?1\N[^XAB>&^>FA WB&/.S"']X?9^<4RZ\+FS,[#1SN/G;O;SM*B_ )A
M].IL"@BJ01C]6&T*JY5/(A*D/,TNJV,1.2PL4B1I2[0WS. ^W-P?[$6W]_#?
M,:SUW^]7&J]/TX*)$1/0"'6,<G]P.@(T 8L"-.T/FHP07"N2$<:4?AIK%;*4
M2V1E<LDZ%2A-?;B[>X(F:D8:\KP#=GLAS_M,MW?:+N;+*PF?-A?SV>D\MM"E
M6Y]5 4$U"*(?JU5A,36$<(>"C09Q3R+2V@2$F0H$:Y&(V JB/\GAW5!W[Z:_
M72F[7GU=-9*J+U\71+XFD3\X'0&5@$4!E?:'2E@1R[CE*# B$"?$(!VY088Y
MG]U=Y8SM);6[!U0B(R%@R/)PW5S([C[KH'Y=G,4Y1,JKLQ[ZB9@]O(?TX,0?
M"IW[W/@*%LCS+1!J<%0R'YK# 7&;#0F3\J^".*9T2DKIV(=?G&V.BWS@E[]-
M['2QV5/5*<Z>C!!.^EI M'.UL;H!9J X /TJ("Z@7Q5,#.BW7_031N#L3!,4
MI<"(>QV1IB$B;+WS$1O._589U%/\[_V@'P7TJT]Q[" 5O4FH[OW].>U7U"N4
M6GWTR_+BW\\6=E)2U)VTCIJ+(J]=G3;T(]=KY4"X$#($QVJA!$(4B2(BCYDM
MA=K9V@@V(I=]72QH=(ZRG?KGO28)*!DQ12!+<(1B?W Z C(!BP(R[0^9*..!
M6:T13AF/N*0"&88EDMF##EI((6TOD[CV@DQ4TY'1L+Y^N+XQY*^?=5!_BVW;
M_/$/GR@F[$WSUOOE^7)B%S%D*<JW]F-;Y %"_-69&!#BKXS.1QGB/YA>^G9]
M6D=B-%D<*-4)11UQ=LV=0X8$AHPCV19))B3;R[*H#07^XX;^SC]/8ODAVU%O
MSV>9/__=O7ZOC=7;"&XS4KV5![Z@],1-]MT-I_X)4!U0'5 =4!U0_:E#R9FQ
M07F*"(T<<2$<<LYEF/8X SZ.)BG91RBD,E0WM,>);@#J^P%UJ$<84%3F$?4(
MHV8:H2BA/@NNGQCP37U&3VA1:&&V=)-8CPVW#WWV'X=E\<><0XT6WG!M*L(<
M$RD(Y"ECB#-;NB)90E@0[ *)VD:[T\*'7V)?=A+%9"2)KBJY]$6&KL=4&HH2
M!X2LDI$!(0$ACQ8AM>*4>.,0<YP@3CA&EDJ-7/(N\6@UT6JG!1C](20Q>"15
M7>,# "&W P;Y9YN__W?K@_IE>1[G8Y]_#^,/][CM[(0Q]LUA'/?]P5[^_D\X
MD6O1OB+DVO;%DD<N#;+$2L2]Y$B'H!'C1+"$H\@RNR79CFD7>.9X@3WB+GID
M1'Z/9#&KALB$E>JV9/_NSV)83N*OZ:WW\V4,?QM;-YZ,%^/8OB\'_3Y__O>3
MF?_GJR9FP;XH3)ZONR]"<\BC_DKE[&:3\#6<L+JTW.IU-S74W\L;5Z1L-FBY
MR2A]$$X^Q+8#"6^M237Y3*K"U>VX732SU"S.8H:-R63V<3P]?=TW$8>I:-:*
MN-/#=U'!+A>S-7:5YRFDRX]?+D<3>SE;+O(M/L4,A-WM##[!WZROSXPPL1=M
M?-W&"SNWB[@F0V<YK3[ZU5W!XP_C=MR=X.7K]6?<$T1>W572$Z+$-X6*]\'Z
MZD)"3S1YU(6/N,:<*,'QYW\>\YY'77,B,*WJ&1\(\NM]UE5N%U^O!>A!PTGW
M)+&?G8VOD%D]X'0T$/LSL3-IRU__\Q5]]1()_SR[Z*GG\GN\6,1S%^<-PR.0
MA5ID 8@-BN>X%<^/T5_I'0)ZIP91 %.TUI,!8A\U(GQ526HE1W,8S*"8LFK+
MAZ\S#?6=%FBM%T%LT%JU:BT*6FL@@@16<*TG \0^&)Y(B(OL#2V^?7N>R;MH
MRPJ^Q=ELV=II: _<^5G?V=2(#;"L<G\%"3^=7TQFES%F'75^$:?M,X:>0.EP
M]:7#!R?M"R@+AI+?7L>'8*N%P08)PQGB07IDK?&(>R^8B,1P3OIHBEGKP7_$
MKMEXHY3MA^5\WN-<$#92M*\.XB-1"D-1K3LP[GJCZY.LN[K)73?3 I(!DGT5
MDCF=. U*(>.41=QPAXQP&ME@+=>>"TFV!F$]I7EE7TC&V$B4>"P@&<P/K48/
M[U'*?XPI9GD*S3Q^B--EA)EBU9D:_4S8.3AIAT)%,"?V:$Y@*8.B@2(117:'
MI0U(2X<1RTYO]I4UT?VLL5RKN7^LM%S/WC >:66JFJ<%TGZX5,<+](:!:2ME
M6H"HYX]K2#IR0P.*-&K$L\N*+$X19:PA-,G '>YEU^1N(<J,J*YKCO/Q2SLD
MB*MQ<]]-_>P\-@O[*5]^82]+6S7DAZNS(R" 5FDJ".R(Y]L1PD3K5$18L8AX
M2!Q9'@12PIL4HN5&;@V;?N(*B3*<8Z7QWA>%UZ\I04><2PB8'[>\@[,+3%L)
M%0&D]@A2DA =C>/(J+(1P6N%C(P*61*#<,DF+WI)[^X!I$1?$5F0=\CJ#LS=
M_75Q%N>0RJW.=.@G<@;KH?;%Q,-<#S5<\P.GF-U=X9'Q,10?.65_-[N_SDMG
M%)%&RUZ6!W3Z<7MV:L\Q=S'BAE05<Q_$FJ4CT1T'IR, (# Q ."P )"FJ+74
M%$5*%>*,$:2E-,A8CB-306C52[)Y7P"H15^A8@# .CUUV"6XEUV"=GOD.N2O
MJS-O8#72,76.P6JD?9L_RDG,G%5(6B^S^:,U<A$SA+6+1A*532'?8XY\9Y8/
MIR/!82U2C;8/H&/]Q 5T!'0$=-R.CAL;8U0*86O*:EU3IH@(AA1F 0OIF8^A
MQ^3\SM!1D1&A&-"Q0G3\BJ6!=[Z:W_I2@&^_7[67F83]*2@B;U'B[#J(=&%/
MXTH2D4WYF5_;R4=[V;YYU?SYI;%'K\LE>:1>FI20,&6YI) 4:1LT(IP&G(B.
MQ&VURCYEN>3?9M/3]W%^_F-TB_?QOCV2&U_MYCF&<7LQL9>OTR1^VCQ%0O/7
M_M]ENQBGRS7=NHM0N[#SQ9ONR% ^G//VM;-MG(RG<>MP/U-_<VE@;T&[KUTN
M>3<SW$V/\;1\(]21Y2MN\06*;1'CU7?Z9,V!&^=SM6P.XV]N/4P5U'KUW0^S
M:0?*!6M_C]/Q;-[\,EODMUY+TPIO>EM5V['BX4+#NUMABD^8$M\T]Q(T+&-#
M,>6PU_2>LKEI\_\N)Y<-,:-,I_+?LLKTA]EY?KC+9MRV)0)_[78=AU,AI6+$
M9K= "5H<!$^0QM@@&ICGP1HJS3:L9$?$:6(R %F.N'81&9TP\MA;G6P2)(GM
M]E:W>#=M,WR4%>0_Y^^[FFQ\KT\A;_@4XJ&"7ZU.Q+TN117<U>2K)X7P]O1T
M'D_M(C87\_'4CR_LI+E8SMNEG2Z:Q:QCNL)^*ZD=-?D9_5F3KYPL0[Y3^7-V
M@.+\XSP_^[S]XQ\^E:O?-/%3G/MQ&\NLZ+2<3,HNWOR]9Q?=<></SC?Q9QE;
MRZLVA'%Y/=_[R#C:<ZZCL@+%DCGG1@=DE"&(8*>D2#PIDI[#T?/3.'W]:T?4
M][/?KDCZ]IJ<A=%[9V\V;.ZV'2T*/W[FZ^;;PL@KYO5O5B_]FE*V>*>GJU?#
MFS^=-._S1=.XR!\V\S&&=KU@^N8;1DWG:V22AF4FSO3TLX247[+=XU=CU.VT
M#+(_/\_*/#_LZO=9*89HYJM)<_GS5Q^9Q:F,DO[<+]RXRTT\R'(9YUF4+O*3
M?<JGM(@9.8Y,E#1+E!G+D!"49K&0!#DL';(BHP(W03NUU0ZBN),F6(M,<AKQ
MY!PRP25$LX/BC.?*,WP;''Z[.MR?Y[/S#>NEB%)?^*#T4"1HQ?,;@F(SF[6=
M'3?*Q&BC7Y:!;3.7#:ANT/FU3%QS9N%J%^T\(T&6BM@N&IO_UY35X.7:XV)2
MKWA@2DI$0E;;/,J('&44>>^#$ABK%+>2AL^W8-Y=4?8?F::_+XKF^"VC;_Z#
M/8TW>#:#;KQF6D0WN?8AINWL^;J9]IOF(NO.R\QK)\]EJWOB'CX9AKVS&;^)
MS?HD!>1L/EZI= @Z<&[=UNQL9P-7PA@DI<AZRZ120EZ2R<$0CH54V19X_/&6
M:$A;BX^R?K#LCEP#4QO/Q\A.ITL[R1B4K3\[G^<3R7HA.S0VOSS//HWHM,+*
MOQ%%"T2;K<IR<J.L*[)_-BV@=^,=Q0NB^#JFL!7QK8@/;^O,CUF7-EFRLO"5
M[[0;UDQ>:5SZ$SPQ91BNSL@HF4;"$J>=(5[1[6K-9[/FW\NW&B\N?\RL>5.!
MA/P*.L^W.ROO1\%>HG*^*$YKX=XK]AO=#$-4S%<%<2>Q;;.TS"?CSDQ<>U$9
M@N?E<(NUDG\I8N?];![LU,?,?XNS@LGC>;,HZN.DJF_50 3HGG&XR\[T+\;4
MXFP\#\V_LBHLCD7GNE"VB@CYR:PMEV4'Q\=;QM?:&V\[-V-6OM+,_S,[$\7
MS6QR7+87)\IF_,4H25+JU66I5W<21<VLI=&2*'8 SALNPONS#(9GL\F&]?5K
M^KV0_+=R.._GX]/3.'^L048?W'MQ?]JZ"O[]9LV-*[U4?-R;7+H!D?F;-N>S
M>>%T^VR$K(PO(Z74:!T1#5%FG\ &9+ PB%*9B$Y.$*_[2)8]S)?OYS9D7?&C
MO6QO<.'JA<^LAQ]R8"OGO&:Q^J)-MCJN'=*)S8;J<7$6-UPRFGU,313+VBM@
MY'B*B"5NA*':.&/VPUGYM1(+6(P_Q TF(\_BLMKU6R'L^DO?R7%7>'W2O&U+
MP".VR\EB=%OSE8"*WTB2V45WQ56@_.J3"HGCO+U#<8;/1D*:+>?9T+O32EB_
M.#X_CV&\B@^FV60R^[A^]_J*CV=QNM;:JS#RZAG/8WYVVV:JVRL+LS-,BCVY
M_5A=V*B]\1EG-E/)Q?SA^9-6_M[ZEME^\?%>.P??HM^1A36M"A)[P;.MDK+?
M%JA$)FJ%A(B&$^D3(VJKS)PY1J/,!@M7ILBP098H@I@R,;G )./A1H;@7@'.
M'OSLIW\MLP?74VP3G]S?95Z'U#XN-W!+S#YS[SS^:QG;(@+IVN7J3)NKB/PT
M7W\MKY\YNR1L.V=L^[-+*,1.)AN?=76_-BX6DWPCVTG8[_%B$<]=E@N&.Y^5
MK8*SFV];R<AG\=R\J\V/EHF2OV4^-+<2K_8LB_;MD.T]7L-5,G#S^YTTWT=O
MEVV\_96N@AW%\<Q/,IO&+K:SOD]V6V?S15,B!#>SVCYC=#M.XZO$HK?S^671
M3Q_L9'DGY?(CKJI!-WO12HSEGJ]3G,?B+!?-73HM.U7F[*2C47L68\G*W&TE
M'(QA[SCWJIZON>' ]UIF%DS@V23AR"I3LJ>\Q,@]15X(YX@D1)FM,95/L6]N
MI7G>ET#F_>5F$*/8: B]RHC>+:IKH;SL=N%F-7"G;AUW@KRR1MK7?4>#!ENQ
MN:HV7\74MZE@EXO9NE*\/$^F?7G\<CF:V,O9<I%O\2F&-ZO;&7R"OUE?G[EE
M8B_:^+J-%[;DX=9DZ'H45A_]ZJZ>[ _C=KPZT-?KS[BG-WMU5ZE.LI268L![
MB^BO"@)/)*6/N>XQU] 3951?'U;'@]UNDA_ YI$C7+(.Q-XWL3-IRU^[8"@0
M'K@<B W$!I4R3,(#L?=#[ <&*NE]3CZ&DP$Q>#'*_JOF$U9R-,]K%WOJR=T(
M:?[%S9L_?U?BFM6.E[QNNJ_O $&1O0AB@R*K4I']&/V5'B.?]1@%/380T0)3
MN=:3 6(?#&'DBXR+' 8_OETUYK:K>HW9LK73T/X)A*("H8"%R96,9'GL()'7
M3Q,;F+*Y)^_DF)<L#GK"*="[*GJ#(@%%<I2,#?3>X7;23?*)BUVM/"F?/ 3;
ML[\"U]]N]0; 'K?J]%,_VY@.3MJ*Q[3O(+10#0)\!54KZQQ3.'HI4T+&\X X
ML0X9K%EI?) 2>ZZP=<_I'+NG^_.JTO^!D7)?N2)=JQ%GJJKU; =7"$-1JX!9
M+Y9% ;, L[X*LVC&&6,B0410B3C&!&EF*3(D:9G%24J[-<0Q6N<9CPX%+C)F
M6>J0LXXA3$@(AF 7+3L49JF^5H<<B4(8E.M\Q[I0<)W[TP#_E45RENGS[QBR
M7+G%YVYT/VL7L#*T/JMD%_N+8"/ZOM:>#64C^L$4TK?'-3G&8Q\)Q1BE5'QY
M2C3*EI7,9I(SW&.'P_:VA*?Y_RG.YS'\/)X6[?U#4=Z_Q-X6LX^XOG]D3&7Z
MJY[M:_OPO)Y8B 0070-T $0#1 -$'SK<(:553GC$J,&(:\Z092)CK@PJF.05
MHUOK )X6[M@E1-.1%O>/_J],?P%$[ZK$X&65K_9W1K]LSL>"*H)*#:M^ K"P
M$+Z.K TLA-^[J2-$%%PX1!6798YM-G5<C"@%GYRAFA/52S7"1A] 5___VVKO
M3+];X:D6(R-D5;D=6 L/&#D4X@)& D8"1FYC)!:"TS*1V+&$N) 9(X71R 0K
M.8D9[K;7QSTE'+ GC.0C2?J*"P!&[JI*(O]<#O^[[=5FW1+[?@=V)TM3C H9
MC%DV IE'UGB-F">9Y6-DTMCG#.SNEAG\[L]B6$[BKVG-Y_:*T=?["']:;<O=
MR>1N0K]J=+=<EWU4&)AXWRT-N5X"<K6^<=%M8RH;XV8+._F\M?5J!7$SCWYV
M.NVJ.M9KBK?VA&_VXA['*&N!3PS6CYH835E/ Z/U":?]#;+N[;',B12/H@10
MZUG4@NDTM<Z& &(?]70:F'_V> MB'F/S]_S[6=O\E+]S6$U!NSG@L2(O%\:A
M'5RM'=S[JF&^ :BQFM38+^,I:+%CT6)@-M=Z,D!L&!M<V=$<!F]@V/G0! FT
M%FBM>H[F8%H+1IL/2I# ES_TK$+04F!;@98"VZH:8H/6JE5K@6TU%$&""&.M
M)P/$/AB>$ Y[8V!O3%5G4R,XP("R>NI??\@_E:KUY1UEKM6,RG^T+/5V1D\2
MIKJ'=-0]-+'B7J-CWOWP%52MK(^(<ZVTY@0IEC#B7B5DG0U(&U9&JJH0R-98
M$1:BCB%RI&STB">"D9->H\"X)XG%_*^\W4=TJY^B#%7]Z9.?+,-JEFJ9[6C+
M8_75421-55-&#JX8AJ)> <T S0#- ,V>AF:8D22I\8@)&1$W(0,9"1$%FXRR
MS"1NU5;3H/=6!1L1BU@AC@,KX*<1]<0ZQJPTWA\:S7J;#7XDBN' ZA5RWH!=
M@%V 7;UBE^+<6"L#4LGHC%T&(TVQ0TZGQ(,W(CM;SVEX/Q!V::P!NRK"+O#$
MZB1WW4P+: 9H]E5HY@*F'BN%,G@9Q)/DR'%.41(X,J8#T3C<1K,0DXQ&6E3<
M-,2])\@YY1%.9=H1I2')K1E^>T<SB"L.=TO3E=\&2=#=:()->6MFJ;]-38>L
M*WB!-LNCR0V+(:H((PUS,<1P;1ONN4@X>"2M2MGK=MFVD5$CK")6/I&D_-:V
MI*?D3#?UZ:]IM9 AFS7=2H:>[!DN^K)G=JXTKDN'06T &M9(;D##*M@:T'#/
M.5?M)8]!(,*=*!5$$CF%=2DHBMA*3?)+?>1<]X*&-<\@!C2$7&RMQ 7LJX*)
M ?OVBWV69JARDB-K7$"\C-5W6'BDJ*-1Y/_C<6M3S5-RMGO /C)BB@'ZO5#%
M ;Y@'8P-> AX.& \%(*10)E#UEJ*N(C%%]04)<69X5I(ZVD?6=_]X*'LJ^H6
M\+#.?/ =3;'=^W>3$.X^^F5EA-^7O2_5E/6 9;/K<A38QU='+1OLX]NWY1,X
M%L9(@Y32J>RL=4A+(E#"F!J:L"5EM]Y.^FA[,G@4K:M0&Q;P 4P"3 ), DP>
M$4PR'U4RBJ#8)7X#T4A39Y&7E&$LE)9I"R9[:M#M#2;[RA$#3 XOH'AP.@(H
M B@"*!X7*&(; S:*H8B#S'Z@D,C:2) 7D:=D\H]NJYZXI\[?O@94C(@F (N#
M@T7P'NLD-P E "4 Y79ZV7.2E';(93<2<9O=02,-0U@;QUV*Y7\[:BKN#R@K
MFTP(0-E_7AGZC'>J''Y**6;!^1 _CUJ>VT4L+<>+L]A,QM:-)^/%9=8$YQ>S
M:7X3%-<-P#K:195,I=;14"@-%E!E%I#36C B A(N._L\28:,EAH%YXS"3K$H
MY6T+2!H<I-,2>>$=XCQXY*B)B"83&4FL]&C=MH"*R?-NVB[FR_/\.&M[Z!]9
MRUXKW]_BO!RH/8TW;*.+Y3Q>&T>(;EI'#Y;<G=1<<%>M:;0/5^L;0%! 4$!0
M0-#!(R@SP>C(-+)1)L0]%LBQ%% T7FB,DQ')W$90+6PPS&(4F+:(4R&0%H0A
M%U.9^:&58EO!=D!00-"*$/3@- :\!+P$O!P>7@;",E*ZA")/V>/D-B'+C$/!
MZI1]29O/VH+'"7AY9'@)'F<M; \("@@Z: 3MYH H1E%4F"+N>'8<&0U(!,.-
M-S1DCQ0\3D#0O2'H9JH[_VPS;;Y;'^(OF7GF8Y]_#^,/]V2<V0EC[)M')YT)
M?>@+#"3O_';1_!XO%O'<Q7G#\*BAF++&3D/S8_17KY+N53KJ,M'>SN>7X^EI
M\\%.EM?Y:8J):7Z9+?(]/]JVN:YB.@YM9UPRMC/[M<K^ E8$&<(<(H$+S9*T
MT>DM?X%EA1AE5HY<F5+,:I E^8U,F9A<8)+QK1J=O\VFI^_C_/R+Q3GR1G&.
M>*@X1\LO:+,J6+#)5T\*L0O7'1GG8)H28XD@32C.K. RYF'-D-(QD Q[4D5Q
MFW.B=9[QF-W1,GN+6^J0LXXA3$@(AF 72]OM'CB'G\AA<,ZHR5;!Q<H<F%R.
MFFE<%,6TS#3J9JK$T(1QZS,R+T8=EQ65E>QX_I*46- .RQ \LDXPQ$F9\$U$
M0ME:8P(GES4\Z5N)_9QI_-^%Q#WQ),?BY/Z!;E7QY#%JLYB43\9;A$-IZF!6
M(:NC1]@1R;VW5J3>M5GO+"3H4 #QIEH[:=X_1FN%F'VD_,E9YSG;YO_FTRN7
MG<]*26$LKE*SF-L0F_+5/Y22PNT/LHNF*HH\UD2MZJ%/;O@J=[DBV5_IQ1L9
M9E*K?/O.(;M!FBM5X[G4F'./I,,Q(P^12 N:P0MG!92$$LQO[=IZ2O_8[XN9
M_^?9;)(=[/:G?RVS.!0)^#%;"Y-9NYS']_GCOY_D:UXU,>N;B^)<S[,R^JX\
M^MWN=C8U+B;V\G6:Q$\W3^E_E^UBG"[71.FN0.W"SA=ONO- F?+G[>LBMY,L
MP5LG]YFTFPRR.LJKSWZF8^DR)9Y_V'?38SPM7PIU9/F*6WR!:%OT>/6=N9:Z
MC?-974,P_N;6PU1!K:S>-ICPCW_X5!3QFV;%C==Z>!6[.)H(QM>2;G5IN=7K
M\2(_A?\R,9M?+Q9K(^S=M(!>*:W_;6*G-]9U]4%(>221H/_*7W7>&0(_S,[S
M UVN.;%M_'(^+W9#_E4W#]"W^;9\Q.J]_DWWCO+RZH7PYD^K*%(VRPIN9\NC
M/;/9REG;(-NWGIV?SPIQRDT79]DP^1CGL1A&<?XA6S?E >P'.YZ4B%^Q_#XO
M9QNW=QHQ S:_+5=8&98!36;SF["4D8Y01(,.T@CO9-R:1!J=,I3JA Q+&1,U
M=D@S9Q%U7BA.62*,WL;$'SJ:=^?\@[THXO9[=TC_N"+ZS[/YS\M%!L=W5Z2^
M89JO#G33)G_WR\\/MI II4>9R'4;YJ.ZK.*+R;*]5YKN$9Q[9&5YO_#G+_%A
M/,MWBBM NBA*=.6,W'.W[L,F79 X?U)C/]IY:#=N<:T4.NF]\_.S%IF=QGSQ
M?*4OUOJDT^#7NF3UO?(SE"^38B9\&#6^?*%)<7PR1<HG?!RWL5DY139?T7S;
MO5K>.VW<954GVFR"4Y:$V*U]C8?/TQ^,(D3=]!A*>N?LNI'QPI[&56(-V90?
M^[6=?+27[9M7S9\/G0W;8V7#G8P"%LUW\5.<^RS\?ZI+;6>M.9DT+NOB$+HH
M35'0LT[-?5:H*TWZH+:^5J4GS9V9O+L1:[@F$">.")T,\C[[^9Q8@;1B%D4>
M" N&,4GQ]DA28H,V 64SB2#N\[NMTQ@1[1QF2;/ Q598H!S$]R5^5O P3MMN
M+/O;^=Q.3V,I1?C^\O,EO]G+\M+;@G._=%#\:UI93&_7YY=-IK_F]RZ>;2F1
MD<)\1,C]<TVKX/$U)]]A<Z3.=&Q."SGNM I.^O;0CMS5+59XUB.%MC_9^72V
M7#17' FN[MUT>S=M_FXOKQ3DAM';:=A,RN/2F8H;I93$2')E$><D(!=91%:R
ME)3WU.&MZ@5%F/8DJUBAB4,\18VL,!2%Y#$W$BN<^!?<QI7V6S'FLU4>IR-)
M[Y_$505';2#W>'$[:C'KOE]6<VWTRWGV<:Y"?>7JMQ_&BW&(Y:*",6VZ7%79
MY$_._E,)NN0?VWS%_&H%O<OBM/HQMJ7,:=R>98[]K$;?GLYCAU"=<]5Y6?DV
M?X_STWQ!>>D?<38_M=/U3ONK< WC;]:/<OT)W:M_:C(9_=D-,>E<A'S7\30_
MMLTNHITOUA$<Z[,;UXY7#_OY^XVG&]9)%CQRDG^/7;JIX0?RJQ^O:%?T^?S-
MVNZ%RL(!XVGG Y1CR0"03^3=NU'S+I.\T8.@[]7*&SMI?E]D1[UP8-MQ[._+
MBXM)]WO^VX]V8;O+ZR)^%H39<MYD.^^\(1C]GU&'Q]G"[_@E/_=XNE)RG5Q,
MOR0JZP*5^W3 C=C+/%Z46.CT[H3M@$'+89>P+<D[5<I/0D#&18N42BD:;;7
M6_F_KP&MK ZGKZ_,I1\VJ5M>NP5:7R@EI@]@EZ@\HOG-6FW'*\OQ)MK$CAA%
MH91K?A[/V\6UC?E_\Q^;;[N*@S3>N&H+1OX$!OU7&?2H<RJ;3<=SDX ;><VO
M>(97=Z?9C7+9:\8:1:$CXCJ[Q<XFA83200KBL=>]C&G]W6<K93F)OZ:?SB\F
ML\L8?X_S#V,?[W&T)Y.9O]J$]H_H9Z?34L3W6W[P6>@6HMV?E@<_9V-552D8
MFF5:?BRQ^*XHOKF"BW9EG*)5C9#?H'T35Q,"U_)\1TJN4'#UMFFWK*T+J[>?
M07N5$,AW.LO7K6::Y=_CZZI47W.G5CKN6/&Z06+%"G<(BETN9NM^D_(\F6_*
MXY?+T<1>9KV?;_$IAC>KVQE\@K]97Y]/<F(OVOBZC=DAR,RP)D/7^[3ZZ%=W
MC2/\D(V@U72[U^O/N&<LX>JN0IP014NUQ[VM.%<5'R>,L\=<]XAKU(F6U&S\
M(WKZ8'C((W[(!R9PZJ\?P'F0+F!]R"9@/>#.5"#V9V)GTI:_=@7;>VX)?F!+
M<B5'\SPWY*DG]_XL^VG-W_/O9VWS4_[.X2]NWOSY9LUU3?W==V\)KN\X0:V]
M"&*#6JM2K?TRGH)6.Q9! S.ZUI,!8A\,;RC@345X4XI) $^&)$B@M4!KU7,T
M!]-:%+36D 0)M!9HK7J.!FPMT%J@M2HC-FBM6K46V%I#$22(.-9Z,D#L@^$)
MX7L E/HH?QBX^/;M>1E8V:[J,&?+UDY#^R>0B@JDHL^]RE<;KS>IU[U_-XN5
MNX^N8#KX'NM\2[UXJ4B^F,_"TI<9B!_B=!EWO)_\\8)4S3:"&G=Q]+,/_D6,
MQO\/X.C;9/\*JE;6_J:MYL[KA(@I.Y&]($A'KU!P$B?"F0\RW>[+(5%I;G"^
MW.7+N20"6:\H8CKH)##!>'M8\]WM-_>.VF4W1NT^M$>#F?MG-;](-3 493I
M40?P O Z+HX>+G@Y2J.RU"/GHD1<.XRTHPJIZ$*T..9_MC8-<.FM8UXB1W0W
MI(0A*X1 AE+#0HK6N/V"ER1]+8$Z$C4P%&4Z0%$'\ +P.BZ.'BYXF1 \CUQG
MY&'%\S*I>%$*8>%=M$(GBK<F#%+N6,"&HZ090UR0#'T8YX/VPF#C+754[Q6\
MR$C@^W<WO4A%,!1U.D!A!_@"^#HNCAXN?#$G4R"J[*8LJ^VCL\AYPE&T+B3F
M=?1F:VY6/LF $S,(8V>RO\8ETI9S)#+:"8%C1K:M%5T[AB_-%<#77N&KSYSF
M5;H9<IJ[DOVRB</._5DW*S#$#W$RN[@]\/>@U0'5:/(:;9-'T_N%JZ27R[7#
MM3\DD8YK4O;$9@>8XQ20UM:C[%;+H S1BJC;]H=(7#A+)#):I&RSV)C?+1BB
M/@A);"3!D;W:'^H+BXA U$'4 :" :U\VUPX7H+"B5N&R-<_J##8&4V1Q]GBQ
M<4X;J9.F?LM!5MX3HRV2C'O$K189JBA!.N6W,Z62-G&O "48!X "40>  JX%
MKCTR@)(\)8Q%R!!C3?:&M$'&L("(<E28)*G!6QX44S803S1B!@O$%5<H.UT.
MT< B4X1@)>Q> 8J.L!$ 42#L %' M<"U1P913@E)G73(^M)NH'"&&XPE4H*Q
M@$G@5&[Y4%9H'5WVG*R.&'%*+3(^NU288N%4U#$2N><DHQ$ 4<--,D+CY(YE
M__<XF8RGIZ/F-$[CW$ZZ9*,-^?)QNR@+HCY $^4@3)%^2B >'O1R_/IK/WS]
M52-UJN'\X9HSP4E+DPH(LU26BF?OV23&49!.&DM92M+>-F<2H<E(6]*522*.
M6:F92@1YPQEV(GE1PLC[# F/J*ZK8^4QTX;^?_:^M;F-Y#K[>W[%U#KKK*O8
M<-\O4N(J>2_)IFQI:R4[]7Y*]94<+XBA,8 DYM>_IV< $"1(D2)!8 !V*M:2
MX&"FY_3IYSFW/ET@HU#A(.5=J' 0>EVH<,?EPS'OU,SG@7:[7Y+D2 O%D?,V
M)NN"8W+C/% %M*D\8T@$N)PS&Y$Q*8<$&#>8T9!TVC$5XH%MWBQ46*BP4&'1
MZT*%AT.%&HNH?/)(IMR10"N%K%8824^ED=Q&*OA-*@P>R(["=XAA\!UJ-#)<
M2^0]#])B;+#:;1Z6B!.!3>'"%XH90T2$PH5%KPL7'A87*A%]T,!K04D"7.@#
MLI@P%'3$DA*B@F0;-4F84$D$.(/.)<2] X]0!($2-BHZF:*7NXV0$G5"!2U<
M.#C,>.ZMI^+YLL+BQ66%/S0S.X91-/XWY/)*A65_M51+E<\AF#O;*5>Y#EYT
M1#-ZA6;NQG$X!L^ &V@\SZD>M\_#$%?&X9I#AGC+E7-@#@4PAXACR#"1B[4]
MEEISHM5&=UX6HHXA<J1L](@G@I&37J/ N">)1?C?;NO?Y E3V^K/NP- >4'V
M4"'+0I:%+ M9'@E92N*3"C"36%G$0Q H=XA 2H?D$^&:V8W]3,Y[JX*-B$6L
M$,>!(6V81M03ZQBSTOC=Q@[D"1'#VG);R+*092'+0I:%+(^)+&4R%GN.D8P6
M/$LA"'B)4:$0F #63"+@C4"[<TR[P&&J!0;/TH%[:4302++("8],6*EV&V@W
M)V1K!5B%+0>(WH4M"UL6MBQLN6_74GL< O6(!<P1IY$AE]OP6^6(,9@[DS9+
MM&*2T4B+$K?@6GH/#.N41SA1+ 2E(<G='C1#R0DNON4@V?)F8GK'@+)W 7\M
M9[Z9UK#<AVR9O#R1K@[OICLXN_OEB;>(M(AT^"(M(% TMHCTA8NT@$#1V"+2
M%R[2 @)%8P]&I.OQ%_C9NG'\TS)0]G9^'J>UA]]#_?&.\GPV8HQ]^^ "?7E?
M$&E@)?K]I?EAK^H9C,/?W<HME^M7[RYR9+%=ES;([I9H&KWGP:MX[&(2%N'8
MA(DWD1O$2=3P#W'(.1D12=XSS6R,=+/2YS')2W\6PWP<WZ7; [/=VRY>]HV?
MU1_KV>6'K#P?X+E_'L,?OZEBZ^U%7D/3^:*A13V9Q_!F]M 7^5]RUZ:0(]>Z
MNW3LYTD?YL[A^6D\M=-03TZKIIN&RBZF(8?"J]E9K)9*.(BA3^I)K,[AU[.V
MBC!CH7H?+V;QW,5IQ?!)13%E%8!Y[,?^R]A.VJINJW9^#K,#CPZ5B^/FTZOU
MI;4-W=@I<M^WZA^,X4O$[@#[-BG8^:Q9)AGR>$!1\O#SY6AL+YOY#![Q.0(Q
M=H\S>(2_75X/2C*V%VU\U<8+.[6SN!1#E]OJ;_W->M!^.8"/=5N[>@Q*^&IY
MCSMVE?5/%7A$]+=9B'>Q?'\=&6%,'G+= ZXQ(ZGXENY%1I1N:UQZI W;VKB.
M7UYF1-CCY'7/7DC]]5LAMUG-L825>TU0O24<NTJ2?P62Z2&7<A1A#]-7_:J6
M @.9FJ\TF%PS#EN8N<[H;H=4:W/[QOGAS5?!K1<A[();@\2M_^GN%L._NVGU
MQS]9$*<]C?TO\7.<^KI=_'8QK?TC6]L7?"OX=O3"+O@V:'Q#/8J]60>X7^.Y
MK2?UY+3_]7OX4BXTG=MQ_\&'.#WO?_JNGE3_+]II^X>"@(>T* L"%@0<SM3L
M!P'?G)[FS,-L 7H_ \C5D[;V_:]_M^-YO *Y#V?-O+634(#N8-;>,QP?MKV^
M< /85K7#E-DBO5HU\UD[@U64<WUV5OT0_2)M1KJT&2W];P]A(^)VNEGN?34<
MBA0/4&N_0K0#VR08 B-<$8:,D1)QE_NXBX21UPJ'H E.46Q4I6#C<3(1"2_R
M-GR9X-M"H92<2#%$BAE_V";!-].IG9S&<QCAGR^O+OG%7N:/WGRRT[" TG=7
M2/IVGC'TVO["M@NZKV\L_/GM3_<UK<'FQ,AMG7%:,*)@1&&V0=AYSP.?C]P^
M?\P:?;BLAXE1,A^WS3WCB%O"D77&(.^%2!QS[^A&B](]L]XR?KD(7/ZXR,G\
MDK,QU_?:PX\QO)^!H]^^2V^Z$E3[0Z[IFK;=PU8[\?$Z8=)[Z%*1D=K6/OPC
M@9U# >\#A)8]DN6#HI=%]D77B[R+O NV'(SLB[QW)N]G/K+F^4ZL>7D'UOPG
MN"*YZFLHR?,7OG)VT;_LI?M-QZRUAQN2B98%$J1&-#J,N"(&N90"DDZ*2!V.
M/,GGZ^W[\)!,!YCMSY-?XK1NPM.S$/($RVT=05OPH>!#8;62A'A)&GVXC&=I
M4D82BISR"AB/&F2)4BA8KDG4,@JVF81X#L9KOXKR]IV(((J-L"Z,61CSV!ES
MIW741?9%UXN\7XR\"[8477\!\GZ&/1$E$_$\3M+2D7AD+J)D\0::-2V>TPO5
MVKTAR7>WM4\\W#@1-YQS[ SR(5K$DTS(>960L%YR[YA2MQP1_)@X46X,^G/;
MSF/X83ZM)Z=]O*=O:+3>-72%U$_.?E!ZHA4M5:6[CB,_<E/O,:-5X=B#UNBR
M/>.(,B.$46H3B\@XG1!G6"/#@D/!&B"N&(AF81"9D243#B<Y(D:B\&FQ\(^>
M,TLE]2';*T7>1=[#E7?!EJ+K+T#>99?&P>1&?FJF*6:'X8_Q\T4]A?]Z._%Q
M/"X[-X:RFG9_\OQMO0Y?NK>UEZZ2@]'\DG'93OS)64XU%0EQSB/BG@:DB5-(
M2VX$$<)0:8:P%V5!"_-I;-],PH^9&KH[;&]["CV!"1E4K>U#&H+N'04'G,,I
MS#]01AIV%'7 .9QCUNC#Y5!%<2))"&0-,4"DBB,GC4-$),\P"]CO*(?S5 [=
M>TK'F)$B@^+@O:/1H6#Z 2+.T..N1?9%UXN\B[P+MAR,[(N\#S*G4\X >=)$
MW7$&R/MX,5L< H*[0T!8R8<.8^WLHAKN>O22CF@.7X9F[L:QY'"VK-D/D?40
MM?]P8S[!F6BXC(CFMB:<6H)LP 1Y2G'$5$7![,V8CS0X2*<E\L([Q'GPR%$#
MMT@F,I*8E9H<P&$B@IP0.:S*VR_J_W!R)4>"-D-$DN/ET;UK[8#S(<>LT8?+
MC8J&P+7R*' ?$ \T(FV,08%QPPA.Q%,_,&[<=^9#LY'<5O'!D<#.H8#W 4++
MT(.31?9%UXN\B[P+MAR,[(N\#S+Q\>2T5$E\Y,1'[/T%F^--6TQ\E*3A0).T
M)?$QD'1X27SL.KBCE2'&&(6PQ13QB"W2@3AD5=22ZN0L'D3BX\<K2-Y2XH,I
M<J+TMA(?.\":DO@H/#IL>0\[ CG@Q,<Q:_0!<R/V)-(4D5>.(YY<0%8&"2S)
MA6=.I$#$P+AQWXD/249<#HI2]PX[AP+>!P@M0P].%MD772_R+O(NV'(PLB_R
M/LC$1]GQ\:2)^GMLP1NH["14\?-%]/F765-]A(^_G "Y>_19.(B/9"X5N_J_
MKK7:5[^7'*E[7NRB:>OL:KR:QC%X3Q_CW0U_2&DA/Q  V'LI><G>E&TK!QVA
MXM%X+7.[+Q\YXMQAY()3",LHE89A2<.'$*'J^:7O4M*QRX<F?_0,NUF8.I&*
M#:KTMB1U"KT>*[WN76L'G-0Y9HT^7,JT7 9/K48F,8FX\1YIJN ?HGCRB407
M\( I<T"Y'LU&9%NGV1\)&AT*IA\@XA0.+5I[>%K[%:)=$1:X0AFAEWQE+0[<
M>62) >ZQ6B G?=Y]*8UC)GA/-G9?/KH;I;N?K]RC7;P;?/5K/+?U!#[_'L:>
MV6-NQQ_B])Q<HQW41O\JS*>7T4Z'$BT5(W55 7YMS@K[%1PI['=86EL\R*$S
MX\ \R!BEI%9R9+T$=LU-HIUS%&DL9+0N,1WI@#W(-49^<WHZC:?@%OX,#%Q/
MVMK_W8[G-YS']S^LW$.V[AXB=H]_*-@)&5@H=N]@L].D.OR<XP1WG$7%1HRQ
M;V\<1W5A0U:,Y?N0Y1B?+!D&7[UY (9:G8"QO+A#BE=Z?6AWR_(>3I1;DV^H
M/]XF0'V; $/=7HSMY:LTCI^OR^H?\W96I\OED[HK$*S$Z>QU]XX(WN:\?97M
MZW$]B1N:=37>AXGGJ:AI'B6_VZ513_(KH4XH#W_"%R2V+@S)A-%2*4VIT49_
M>SW)OS9Y_1<(QM_>&-@"ZE/3S";-+/8X__;#_RH"-Y7:(DP8H#;V";G< X>8
M0#!G46 9OJD^GX]?C0&3_^.;.$%_>S^(:?CF3[]&N'\+/[?5["Q6DRZ_5C6I
M*^J(H6H6>UUMFS^\OYYC=R/?K#:I+L;SFZ\QG]QXD<W"E>[-;KE;Y\)6P.?Y
MCE?W6>MVNA+.XVI?=B>KRH:\2F#X0,45O A0[^*WQ=D0U32'?>^:XX>/8%]O
M>,<Y5S$)#N86XMYJQ(ER_<IDQA!O8] .;T1%4O"P;FU$!JY W!*%#(T>2:LU
M=4Q(X\+2!IN>QLFK7^(TF\OV-+Y+G:75OI^[?X"2?6BNSMZX9BQ=S->"Z8A^
M533]3D-I"'KV;:=?-EN7;74*%NABH<%X4?P<_3S77%7C^#&.JWA^,6XN(]PW
MUY,=D];A&(P6-*'H<3X9!@QX2SE!5$E/:9) !QLGPW 2$UC_"9$ 7^0:ONAD
M,"A8\!."MBPIMS^MN]L\'[+6W:EQH_6PW)+.A_$NJX7P1[!(5O_>C!YVGS[<
M7+_;-K_7^GV8W](MA/P2]61NUU9"PL2;R&$1D)CQEP#^.H!CDKQGFMD8J?I?
MLNV [9-%?^-EGD79'^W8?0!KQ"X]\JI>NN35Q^R3P^^=N3+KFY*X!I1_>MW$
MFS4S.Z[R(&?V\\;WO\N7A#JE.(T3'RL79Y]B[&_JQTV;S9Z+G#K.ID+W87-^
MWF2I-/ZW;"QM&D(GW75C"[:6F\,-8MM6P5XN;S [JZ>A^N<<[/7>9.N_ S_\
MZY=)X= "0HZ0H /F*,$/B"OOD.96@L.@9%16""HV#MWT*EAO"$,J4IQ3-!B,
M$>(1<]P8(XWD1M\:$-K=Z5W"C/#=IW<-8LE4%Z!979U@9VMDK5OT[HE7RARM
M/ZLR+)Y%!!H=+Q?F_1_@>C#P/S7S<:C.[,>\)F!!3*./0"VA<I?=#?N+J[-F
M'.*TA0M#9<?CFQ\O']L-HIZN/(A;%\ZH^O):AT$OEMWUAD1P]S"?YI7:^4*P
MXBIXH=D97 ",$&[S=;)8X =:?0)WZ,C6G3)!$L,X,I@!"3F",PDQY,#.3X0#
M*T4VA(/ZEI4YJX/Y/F2D?F#,55Z+N8K[[+D1'_B*A:O'>0JS8AZ9/@HFA #5
M0UH%"J8^.*4:S"'XU>#H' ?U4C?U,8!W$(VT*'&KP)OU!'18>803Q4 <-"09
M#E@?S6@W?NV3]?$$<+_- 22 _O'E:%AC7 ]&#\@YV+M@,HM^6E255+8O*^G]
M1+!#@5>3!29>4>J23)>.9*'2-2K5/'(N,!)>"<0M%D@S8%;N%0_:"D7B1E7L
M/JCT/_/<W77 ;??''V#B?X)YOP7%GJD,5HS4W;W>![%.CI%LC2=18.J1U P<
M*$X=<CI9I&AVQV0F7CD$LAV@QBHYD@,W$P=-Q]?X&*08/_OQ/,1=UA9<E?$,
M0B1Y'\!*)'WUP;^?K3;T7X"F]T4;R"88]BL[_F0OV]??5'_<=SW&#NOJ;E64
M)QAQA!Z8%==?FA_VJ@9_H_9W9X"[X$=&O[:8OG>;OM?-VSYBE-FCK>JV E[P
M\W&7#)ZW2SOWUD!OYC4[N?S][SY33,SK=B/RVT6.LST-7^B,YSY^M?A>#I@U
MIQ-XFSX'/VEC_M(B:_.IGIU5;9Q^A >B/O&>\^U=DATXL _9+=(W5R.8QG_.
MZQ:$N?QJ#O0!?78WAH%-;18GRK4;.9M?MP\9$=RBH\7):B2+,:X&LAS9XF'7
MZ@0NIHVSKA[7L\L^;MA]>'7+ZCR"_^SS&X_'E8N5]6=U_!C#Z)X4Z&,W!@0=
M71?NDHF0;'Z';,PDQ +!R<M(:-S.Q@!_%L-\O,Q&;IA"OX+08%2=H0(*TZW:
MS@!ZD]D;Q/4AIRP^P"#^/(:_?U-%L%DN,N!/L[FSR,> 231[Z%MM/['TV%7X
M\Z0WM+)9FF.YTZYZY&HE5G8A@Y,*1M6%H3L&:%=_Z#*<TY4(KZWB;+6O:]C:
MWTZZ[V45')1I]" _>@Y_Z,?^R]A..K!JY^< O/!H6'1QW'QZ]8#M%6N%75^]
MF&[):#Y8\;;!0H=IPRS+2OL<Y"U2L/-9LZSRS..!Q9"'GR]'8WO9S&?PB,\Q
MO.X?9_ (?[N\WF>WYJ*-K]IX87/-TO6:T.[6W]S6+NHC$$6/RZ^6][BC;53_
M5"E&1N8BP3NKCQ=U@B-"R4.N>\@U#&YVK1'2MFX\DGAK@Z0C\;SCNJ?CE_Z*
MAE_/T(YMN;;N]4CTLSIQ]RQG?1R][UZ\L'?:Y/%FY?VJ\/ZVODP#F9JO-&)<
M,PY;F+F^XFY(IZ!<FZU5NZ#AS5?!K1<A[();@\2M96*A6F06_MU-JS_^J<LO
M5#G!T/^>TPQ5EV<H"'=(BZX@W&Z$75H2#R; _;?EOBP+ !;](H9$NA@2+=OI
M2X.(X]FS_7*U]G#+3RQ/05(C$<6*(IZT1\;G#3!>QV"9],22C>P+-AXG$Y'P
M@B N9$+&"(52<B+%$"EF?&OE)S_^<U[/+G^>M+/I/'_8OIN=Q>F',SM9%*:\
M;18(NZ76NP+ &5Z@]'LHV%$8[["UMK1$*FSX56P8M D\5P[G\@+$5>H:922D
MM!$I\"!<W-@8/5 V'$2%)N%T)%2ATD*E1TREVPRV+.)@Z^+KCAK:6O!EO<PA
MWWD O+Q#U.\P-(;!Q"A?^,HIY^8.2(H'J+6':V@JZ9PQ3J(@# 9#4T=D%5&(
M<4^Q9-B&Y/:Z3^U>0_/Z?J G1UV($B=<B7+D=H&.0GB'K;4#CKH<LT8?+ADR
MRFWRVB <?&XMES@R- 1$D_>&!*R43X=$AL,(O2@^TK+P:>'3(^;39ZAS*:&7
MYX'^OHM_B5D.8^&42/N I'B 6KLW&/GNR+J_8,%$3 ()+V5N0AN1ULPA[;1R
M/$IKG!ZVZ=OC^A;C0.Q$D5)]LW./^@\%Y HU'Y5&E\J<(XH1$2XH%X(A80)#
M7'$,]*?@)^ [X;# @F[6J0Z8*(<1(R+Z2SW_7B0R'0J^'R#Z''Z,J)3G/"OT
M+\Z%B>&//C<*&H]+J<Y05M$N\@/W[Y)^Z>RPE_WH@]'\$G3:CBTM+7=*1H8D
M#_ET%Q:0U9J@Q%R*@8O$J1BV+;TBBJW%G00[,71;IO"SP^&JN<#> 7' H:EB
M! R4G(;M  XX-'7,&GW =!JI-I11I&EBB#,7D!;"(&:%)LEZE=)V&M@^-YW.
M@36'$9=29B3N/M+S1<+2H8#[ 4+/X<>E2H^>K?7HN?N<]!+(';+UN9WTPW6?
MBXYH=KI",\^-HDL0:KN:_1!9#U'[#]=2#8DK0AQ%F(%]RB4ER!+*<_2'"LJ"
MYF[#4I4&!^FT1%YXAS@/'CEJ(J+)1$82LU*3PVWVPY4^T5O;=K8##!I.Y.=(
M4&B("'.\_+IWK1UP=.>8-?IP.=,[(3CSN2Y7*<0-Q4@S2Y%A(02'M;?!'@AG
M#B.VH_6(DT$1[MY!Z5"@_0"!Y_!C.T^.O+WLV,[?%Y&=2>C.T.L.)YLUW1%Y
M7P[WW#WZ+!S$1U)?.PFI*P3[ZO>2(W7/BUTT;9TA\M4TCFT^1_;N,@52,J4#
M 8#=UP>46-7N"J9*K.KY[>XDF&6,>03&,D7<)IA 1@(*"E.O="!1L*=D5:>G
M<?+LU?YO)N''!>E\:/)'VPI;$7(B^;"Z.Y2P5:':8Z7:O6OM@,-6QZS1ATN?
MSDGIG97($Z(1CU(CBP5'V!KCN2$)\XV-Y5\3MMH/?;Z;S]H9N'+UY'08P2S!
M1LH,BH;W#E6' O@'"$?[#V;!S_D4[)=\>OCZ@>WK+R]'4JJ;+Q_J]F)L+U^E
M<?Q\_=7_,6]G=;I</JF[ @&X36>ONY=$\#KG[2L'T#FN)W%#'%?C79?Z\P7@
MS*/D=[LTZDE^)=0)Y>%/^(+$UH4A%,&:$TTY9P)W!X&O!<;6)F]QPC?&W]X8
MV()44]/,)LTL]HSZ]L/_)LD#<\DCH16XEXERI)51R!N*M;4Z6,Z_J3Z?CU^-
M@0#_XYLX07][/XAI^.9/OT:X?YNIM@*JK2:='UHUJ5I4OK6SQO_6,69;V3;_
MX?XXZ.Y&OQFEK2[&\YNO,I_<\C*;0=_N[6ZY8UYJH0(+*M]U=:_FRN2X+J3'
MQ8YW)[/*AKQBX!7 A*G@9<!D6?RV*/:NIMD<NFNN'SZ"?;WA'45.CCJEC$-!
MFD7"UBEBLBFKE%.:*Q-O6KY,43"1"462Y'-?&+9P.:9(68N3X3HDYJY9OK_$
M:;8*P/!\E_JCMM_/W3] T3XT5\7TURS0B_F:D8GHUUB9^DX#<PAZ]FVG7S:;
M]6UUFLWP?K'!>%'\'/T\YRRJ<?P8QU4\OQ@WEQ'NF_,QQZ1UX!Q9)QRH&:.Y
M/XD'WXDYC+0#3RLFD>.2-[6.4/##$O4(OIP0=]PA*X5%W@62%$U*!;T_K;M[
M_\60M>Y.C1NMU.V/:]P.OX%%L/H7_I(?44_F=O'&W>?;,';E?2]Z(/G4#T".
M]O1T&D]M-HTFLVD]:6M??<P^=^:2=9)<<&B83S-]=FP-]E5U#G<[ VH&J87;
MF#B#0SX>M_H$9/VO7X:)0PO,:)*"#[#H3:0V[Q9C2 ,QY0: QDH:@+XV@,(Z
M&BD%<S.QW/*(!H)<H $9[Y,3W'C%XJWU1.[^V(S[ZMC,F^7L_[R<_"[>TH=L
MKD==WO^P A^YCCU(W <^=+0;_'GT[%9P]3A/:U;6(]-1%S#7(M)<\T9!WXQ%
MQA@/YI"PP8H8(S4W==0D&X73$6&;P.P2A""C,:@Y9D*& #>)]KATE./1W7TJ
M!Z6C)Q68"MD- EX<7XZ&-<;UT$HAVNM$^VD1Y*YL'^7N+9TJ9.I-MI[>SKI+
M<ZC0[MJ!2P8\01DLPBIOTK8A]]AE"7X%C] 9(QW=*"=X-.V6,R8&A"]'R,\8
MDTB$=(CI"(XC"09I01B0-/?.,"VIWS@][-'\_&*4V9"1N'LGV""4N1#Y 1+Y
MFSL"SB>9F:?Q&-E6$,\BXQP)(CWB. ED1,1("*HU)H$ L6YCT\R/B^C.^SC]
M6/MX.UZM]K]TT-1^:&9VO/[W[YMV]K:9_;\((_'-Z03DL2T70<K1W3W%!J&<
M*S<65'26)0,O/EV) :;H2D[P2SNKNBKT/M9VE6_)<D=]_J0/R8VJ#V=UVW^C
MOIZ$<;%:>T #D%_934-W&L]M/<GFZS0"F;0@D*KM9[FZZ$CC_KS%O4)9J>_;
M><<BRU@NCXD(%I V.2X;5$ . U\285U,1L<0-C((CVGH\VS:V[/J3\UT\5&^
MCEQ35=1&_PK\@\MHIT/!23K2>CU&>S4O ULR66B=AL<JSX2=7"X4O'VJ0@X,
MQIETDN9&D8:)B+A6$5FN.=(,"PG6HV5B(U;YN"*RQP2!EJ&>R5>W#5AF3YY<
MATU/P P_@3<:.,A?9;-[>71.T7K(8)D<[^"X"QC C#X3O(+#$9S+=@&3HD_0
M6L8](HY*A9V+EFRT'P7$#9%PB2(S 5SQ')LD)"(6P).Q+@0OT]:\E^Z?'"H$
M^NFA]';PS"5E;9P,!3]3SGIUV'0(*#I@YV5#;#D)^"]5M5X\M 4K(W+!B.4(
M>\D13X+V%H/#3BBE<TQJ(\C^&"L#E/^\GG6P"%#Y?9?>!-SU=6Q_J%L_;MKY
M-'Z 9_QY#'CP317!TKW()8Y3\+NO%4P]K+2MD\? J]M<,PY/5YNO*6Z[]Q$/
MK&[KA/'-GP@>?6U%V][%]<V?UE2Q8Z!KRGBU!-<R\MN((Q"ZUT#"UPJOOS0_
MZE4-MG[MOR#.\=BZ9MI[9V].I[&CM;8$8N[.J"P-=I K6 3P-1^G,_ TJUGT
M9Q,8V6E6Q=F9G55@&IQ4S;0ZMY?@M)Y4]<0WTXLL;C"DZ@F83)WEM/S>)9A2
M :RG-F87=ES9U7QTN@X695.=V9Q^F<7I\@[+BSVLTER#GN-[P.#^;/WKW6@Z
M-W@:.^-L^1)P@P0/7;W#ZLL7TR:7!8&3\I]QDA\PONRB3<O77K_['3>^@+>V
MD\D<QI0]<1!A/I*C2LOBK6ES:<>S+"S0/7A>F/M9U=IQ]P%<:%<?YI=V,4YR
M#:)UX[H]@[>?M\O4U+K@1]6OJ_>'9X1<PM-<Y'%V'E8W8;9M&U]WD_"IGIW=
M]DJ?<EBM/L_UCM,Z3\5Y,\^?YY*A[I%G<&GWA*_*BPW89#D"G-R>9'Z>5/\]
MAWFEF.B3:WH-AOM\VG6#N%*77HO>VH_U:5/],FUFL08'Z3_/W7]5W_W^=Y_A
M)OYU_]?^M_#Z#RM%BI_]&#09[&[?H'5M;5)U/H?E<3$&/4L)%O<L8\XIJ%*O
MAB .4/+UL9T!3^2(V3D8B:#?X_K_>ESO=H+<"#?4+2S*R3R!L]GG>#M_;GYQ
M,;Y<+JM43]MN'/!+&Y?//JG>_N=?T,]P%S_;GC;?V$$# XG3M8F\O\?%%S9?
M*/YZ4,ONY&K2QQU0_C*?-N,<GOQ+G6+U'DP9@#\0-(SU1QBE==7/$S_J(JEY
MZE8ZM?S>2JM.0"F:/+47MEXE[A<SWE]D7K?5&;P/ OEV_F@&VGYF>RV^?L]\
MN3VUTP;F_Q]QEDVMKL@=T-B&:\35=GR4'UA/J_^&2^'W-P(OET/U)E-+O<+Y
MZ\K8,5L+$Y\75C5N)J<(</=\H8\W%]I*7'D57"ECI\%-#MM4%TT6=8?;(72Q
MR_SCS474D6*F9AL^]LPT;<YO%]EB;?MU<VD$L[*&]0#O^#I4Y/$LOMC./<QH
MF^9 H]T\CN.LBXW?7/(95JZ/LP(#_C3.EK/Y_LVO[]'WS=\1K=J+^K>8!9H%
M?+((C,]G];@+B_>345W ZDZPLF:+"/U'ZSTPUA63??_N[S__@(@!G0& /Z]]
M9Z:,Y]UV!9!Z!NQ3^!K08"; '@[6AP$F#<CW8SV=WX"8S-HP.A]C6#)M3H'D
MV\TO.NE<1Z!9CO<O7KI[<;C7NGCR9Q_A^V'U,OF*939A)39_!M-H9\TIK."S
MRU[M3A9HV:'>]+=.^.YR?;8V9Y-L83:K29-+B#>FM#,.0X"Q=?;(HM2L"YNV
M[?P6$^7BOX!Y)KF-S\=L=LQJUX1Z84?]Y%$"-.F-J(Y[OA+J5V(OV/YDD^J_
MZHO_.ED']7XN%IJ3);^"KW7S'JS-/"/-M)O@A6IOP% [RZ[#:4<:O2'2&](P
MY["<?;S]6TNMJ%PVF4'EKJO'N0UQ88M?9IM]X3$TRS'#8(XLMQPX#MACCCR/
M''&J%#(R8A23=E1$80/=R,YAE@C 6$+"88-XA'^,UQ&1)"41GC#.\,VXV:^]
M4'_L_8XM)83Q:#>;>4I9\VUE4\+9J()'1GF=SQ"VR.%(4!"48>:QX'KC#&$?
M+$E>:A1\$H@'EF.OB2.#B5#4^B W(Z[/I#D'4FR\LDT&-;K>Y5_W] <UO&O.
M/,QRYV.$N,N. U==#@8A$6+61-)W'_CWLU4CS0M[&OOV#L@F&/8K._YD+]O7
MWU1_W'?_BQTV:;A544H$Z-;]XLL@WJ"6_?5ZSI-ND"LC[OA,-T^2PX%[(%.#
M$<]Y3V<<$#"E-'!JJ?,;98%4>D\3CV"Z<?A.S-4"E@:$,?$L:,J5,3LA8#8:
M>I7'$9MNH !>Q> 05KD;))4):2TPHE8H^)LEH!<W-4=3EK"1!)'().)2<&0]
M!TM.V:"B)U%ZMQ/-(:.!EY4/VW3[JAS-'17R1Y(C>;Y<\E_BJ1WG>&\.^-63
MTSTGD3LY#]6Z^*F+-,/%.<Z2_WNRC-?VSP <FD_;+A"4,\3-1>QCSNWUF&3=
M5FW?OB'?9US/ZD44$9 $3-H^/.C'MCYO^SAI%^]K5BT-%A]V]UT&AZJ+#F#\
M(KAX8?.0870IAPZ[<-6H^LO5DSQ(T\5%;K4/3H8JU.UT?M&%LKHV'MTKK1YP
M]3:CZJ_--.:*P9-%++>=CWN[I0^K?J[&G59=7&E5%RL+=4JUAVN[//,4_N)G
M)ZN@\4(\_]96'VN8BE4&:RF5'//W9[F&;RGU-.^ZV=AVD>)>O5[7]/WC(LN]
M*%O/6RZZVO4$:VFSB+=+,??#[E/=;0ZHSZ<PRNL7YQKVW'NBRW-_K-LE?/;]
M(TZSV,=-%R#^=!:!QKHZ>-#N+CGOK,O)HRZ0# .VKA[G /,J4[Y\Y$HH?09[
M&5K,-U[.'?A ;3/I[K?J\3.JWDSR&]J/S32W:\M-C&!*NOGLBA^Z]^L%"KJ;
MJF6F_"2K[CC 0#I=R+F5F#4YII35=-$;Z6J&KI0A%TID94]UKA.H^TJ&K ZC
MW5?61<%4(F!7PC\^&PL&66[!#N"$&&M$ )MR&Y5U/T^R4#_8S\]21S?X%G&'
M7T1'#K&(KM>Z"M0NML]5,G<L%5\_/:K@YSI-]T#?%XW4O>QG]C- [R3"P^[T
MTO?VSM\=E^='4W#" (1K&O-60JF1D\RBB"5,52(TZ(TR:1:BCB%RI&S^3B(8
MON/!\V/<D\0B_$_>">8+W^_/_?P^W 7,%1#PTWT[ H?N"_YA4*.Y%M.XO@"O
MS*[C"Y2!X1*,3QREJ#'B7 AD#?&(.DNIYIP:LQ$H>Y(%\UBE_Z*NBT-)=MX(
M&JS;^5>)^-X&[KPBT+ZI790P/:*>-&_X'I0<CHPR=(C$1,V0\]P"98 GH(E7
M*!GF<9#2TLT\[V,HX\>E1JR6T:^@%?VFACGX@.]6WM%#>S*RA]*(D",Z[+7U
M[<"(Y/Z&HX>FYM9RI1452'(=$3>Y 0P66==E\EHE[M7&/LI';5-_#C7_<L/;
MH7=-^'90H[F91>Q*C:=]MX7C4GF.!8 [-4@:GYMG:G +C'9(N"AE",)8NJGR
MWEL5;$0L8@5L$'+#3:81]<0ZQBS<RN]?Y0D?W7V.R""T[-LCA%"6.(^YAY:R
M>0^N]!&Y:#+_"P6(B!6 X\96])AD--*BQ"WHD_<$.:<\PHEB(2@-288!Z),:
M>KW8MROSV3?3#&!-WV2_[^[2KDK@X;=IMZW]R+=?'4O,[=VD>C,_G;>SBLB3
M14XV3V3?MJWJ^[:!<V3](A]3_3Q)?2*K^C7F[27=;E;?A=:Z=I3?_?YWC+^^
MXZKN;W]8;!$XR8D2T*%^(\GL+*><3JHZ)Z,6I=I'!F !2R5"8@B#P0>PQ0W8
M@$DA8[QT*23OV$9=1,J=ICU0IU4)OD.[CI9)HJ"Q#T"P2D1Y9]OY[W->:C+[
M"7REJ1U_.7+PA.;S9.!1,B##\2Q.)]V!S!5<59_/S[O  $S-Z;AQW>ZEY?D;
MJYQ8FY7_O$_)=H&LG"M=;-X=YYU"U7*+<9_6/39UQ9')X E') 2"N!4):2G!
M_: ,7&P2N+$;GOECU?5=^O&SK]M,MN\F;^/L?6YW\VL$I?1GMHT/9MI[577H
MFAH[,2R5<Q)GB\X_TRM9])N*%GO1\X6@GGD/WL?8]CGZYCP?A.3'$=XH[R@_
M[;=4Y4C655S,12"HKF<;J'..=(VJ_XE5S#V*E[GWJZCM:C/:7>C?A=.:M3#O
MF<W["U>;NJ]RTLV\2[NW3;>[[-J"6QZ>GM/3:_4):T4,@YJLA[6A>2'US5NO
M"] )?$7-!:Q='!#G4B G!$$B:F&$<5C*#?1Y5,#$3O,J: &(N@93I2C@D(H"
MZ"$6!2Q5K@*=JSJENZTTX/;5=%])XUUMW*3C. B)8!7$?.)11%9:C)(QSL-J
MD<"0VUA-[_T9\,(8;,\;;:*O]_+[D N=[EYIQ4-;:TC<U30 08[KU69LP N8
MV;[\;SSO=B[?;,G:-TB\=B!>W17(I68\;CZUKX9+I8,[K?3)8KFW#OD!8EF>
MZ=H=Z7J;A.Q\UKQVN?IEVHT.ICR_6KX< 02")L#=/\?PNG^2P2/ Q\7U7;>%
MBS:^:N.%S=G2I8BZ?B;]K;^Y.F-VMMK:E:V]OA[RU?(>:Q>N'_[;/Y6+D:(9
MN>\\)'@!WB/*'W+90ZXA(R.W=:_M#<N,](,$\:!1D4&.:O^R6C\->5UMS_J5
MFL^SNUU;=W)4]1)K[G41S+/N&KW'1WCLH7\#.Q?\Q0L;1)O_VM4%/;O@%[RR
ME,M(7,RJSN6OEC0ZO*EYFC?PV)G[T)4C_;7IJI!^[/:ZNVGUQ^N[8O>[BKXP
MF?TC,!O@=!98>Q'"+K V2%A[FVLK"ZH=QT(K9O109Z8(>V]\0PO?#(AO<@:S
M\,DA+:2"6@6UAC,U>T,M6E#KD!920:V"6L.9FF)K%=0JJ#4P81?4&BIJ%5OK
M4!92B3@.=6:*L/?&)X3O@%"&)_G]T,5W;Q;GT'5;&YMYVY_(%3_["+!]D<\.
M/.OZ(]J9_4-9+ -8+$/B#)#I3J=A^YL!'IWXS77G=@9/WM.B&(+H!T 6S^I\
MO&P9%[D6N1Z27 LF%-TM<BUR+9A0=+?(M<BU8$+1W2.2ZQ;C/CXEG/R!3\)3
MMRL_.O(3EYV2'K<"GBS\13ATW_(?(+@\6+239L""O:[8SZ+#_[I?U;TUL+Z[
M#D+=;O^;4G^X4/<%/'>T+PO<AZ@#XL0SQ$-(R"5-D Y:V<"=D,ENH[$XP%[?
M*/0O3=O>V8R?76O&?V]#4'U"U-T]PU_BXC\0 "W<]#+5LW!3X::'<U-4.'*B
M%)*.L-Q:4R/M)4/!)>J==HS8M(W6Z,_!31R?<'QWQ]>7N/@/!$ +-[U,]2S<
M5+CI*XXS8XXEZ1,BCCG$O93("N FIX/3E"<<B-I&J\CGX":I3K LW%2XJ7#3
M@:AGX:;"35]Q@H972DO+D2.) C=9AYQ5"1DK$G&&4(?=-HX >I:8'E,GE-U]
M5MI+7/T'E!H\BOSLOE;SCXOC'U+?L#J?/]%&/Y_6LSJV^RH4'\@:./9ZCR?1
MX+8$?RL+#M"H*](^1&D7""D0<G1*7:1=(*1 2%'J(NT#D7:!D (A1Z?41=I;
MCV0M0H?KLA/P]>U%MA8"[4ZERG=^29&N[\]@G#&?M-8VONX../U4S\YR3+J3
M6CZ\*T27*^7;V73>'71]TIWSFD]8M9]+FFU@0+:=0/O];=KV+?H#D?(VV^&5
M=-P3TW$N&IEPI"AQ91!WTB(+TXB4XY:H$+T.&P?:/Z;$_N<\3[&=O9M\?P6C
M/P"*OHVS=^F#_?RX%%UW'"+ZOSAMLO)^IICPUX-*SSVD86#!C4)\A?A>O (7
MXMLE\6G+F5>.H.@Y1SQ8B8R3P&E<!>LP2<" VZC?+\17B*\0WU!%6XAO  I<
MB&^7Q">8B5I8@[0,X/$9S)#CS*'DO(B$8,-,V,;F@$)\A?@*\0U5M(7X!J#
MA?AV27P6O#2MN4)8JH2XX!1I$2TR@6'&"0W6;F7GP3,1W\9N!*95(;Z!X4;9
MK3",'.ZJA7U>0OV.A1BJ:*>3>G+:KIW]T)N0['67O^U;GU7VHZW'-J=Y9PW@
MP?EYD]^G\;^=-6/0\+:R"59X-3N+5?S2KHA22S0PZ^C!HOT*G*,CFH$N-/.L
M,$.QCX:[)W-;ZOV062C6T_:LIT!BC Z,(&*203P9FOO=!)2"<(9I8=5FOYLG
M]V)[,YM-:S>?93#^T/P"@#V9_="#^1#;M.T 7UZ,)55(<NBB+2192+*0Y#62
M)(YQD3!'$@N!N.^B"QJ8$M@Q$":##G'K3>&>GR2WVB^ND.3@D+R0Y "5N)!D
M(<FC)$D1"6,YXQQA_0'A68R,=@8I@:4B(BH?Y-:[TST_26ZU<5TAR<$A>2')
M 2IQ(<E"DD=)DMZD2(U+X$F2@+CB$=E$+>+@8GKL8A#,;[U-W@["K4R=2+*M
MO'5AR>?+7+^DX[8&R)VE1FXG'27VVR'V^'H<#+D?;Y%V@9 "(46IB[0+A!0(
M*4I=I'U(TBX04B#DZ)2Z2/OVX%/9-O%5L6C7C,,6YNB'.&G@;WG;1#G08<A@
M7SIS#C*-6:0](&D7""D0<G1*7:1=(*1 2%'J(NT#D7:!D (A1Z?41=I;CUH=
M11G5OBHH_Z>[7PR5!:'8T]BW]FBK>0N?U9/<PN-B/JLGI^M-/FYI >)L6_N2
MY1@8:I5CD@\]7U$JO&]M0,VD\<E$9"S\PYFC^2>/N/1!>)>"#?HI#36FIW'R
MZNW\W,7IN_2^0\0_9X![-Y^U,SL)@(?7BKI[T%ROYL;W%',+<:*D'%0/LK+,
M"PL5%CIR]2PLM#T62B%IR;U!*I_ZP[T+R/J$X2=FA(XJ)K;1UNEK.E;LA(6X
MT86%CFZ9[UN*A86*>A86V@D+224CML C+E@+'A SR#"24/)2&(6Y3HH]I27$
M3EA(ZL)"Q[?,]RW%PD)%/0L+[82%.- 'I28BRS4P"@L".<XCBAQ;!P,T4F^P
MT-?T7-B-+\2VU<VV+/-2NGXX2< ?;^G$WZV?4LI>*D!>3DU"J0 Y/FD7""D0
M<G1*7:1=(*1 2%'J(NT#D7:!D (A1Z?41=I;CV(MPH;KLA/P]>U%M18"S1C1
MW?DE1;G>7>2 ;EO929Z!QO_6Q8L?>=)D29'M/[WSHF/G)45V:"FR0$QT+%#$
M:"*(APA38X5'S#-M#/>6*KZ-4R"76WK>]#MZKB?-?HWM;%I[^//[#(%/S)EQ
M9DK"[.@6_;ZE6#BIJ&?AI-UP$J.81A61I4DA+AA'SBB'@DC:2Z\4T-(V#EW<
M(2=)Q0HG'=VBW[<4"R<5]2R<M!-.,E+2:)A"T9"(.-4$6>: :8(+D3+G*"?;
M..-PEWZ2+'[2\2WZ?4NQ<%)1S\)).^$DJJ7"CF D-&>(FV"0CD$A%8(BP2FM
MU(:?])@C!7?I)\GB)QUVL7M)$SX' 'S?3#KIY",LW\=)W4RKM\TL/C)/6"I(
M]E_'\*)A9\BU(,76N,W6(#9I&YA$BD2'N X>.6XM$M0*8RE7G#^IN=72UOAY
MXJ?Q'$9BQ]\WY^?-I+<RKA]DW*-A"Z-[EWZ(;O8^^OFTGM79UGB2^:&8&-1)
MQ@4'"DT5FCIR]2PTM3V:8IC)8*1&#.8+<88MTII'A(TEG IGH]Y*ZG"_-$5.
M"".%J(X."?8MQ4)413T+4>V$J")A2FBB$*:.(YZ=*J-30!(33#1PEF%B&_G$
M/?M3:EO=A L.# <']BW%0E-%/0M-[82FO/6::Y_;V0OPC9@UR'"JD<(R$6*2
MD2IN(\6X;W]*X.)/'6C>L6Q/?$94^&'9>BNNNG'-81&V^7">BSCM5M7$Q[)U
M<<"VR78J(1Q<':<K.8Q@)51M,ZY#M=3*?8O^0*1\CP+?+^=BWVS/ODD."Q*\
M1=)XAG);4*2E M-%$,%2T"I(^>0S>[Y8/[5$V+[=X;OTMP6\_G*%KEUAU=\R
MMGZ=G9/JSS&@_XO3YIL_H4&557U!R7O[";,")X4/"Q\6!2Y\N$L^M%$8<,\C
MTHISQ*-CR E)D%6,&^+!Z]]L!_#5IP?MBP\W_/YA-=8NI%A(<?BB+:0X  4N
MI+A+4@P4!X)5 &[#&G'',-+."B28B4QY'0)YTM[/XB06/BQ\6/BP*'#APT/@
MPZ@5)DGE<Y2X0%P$BH#J$@I4)<X\(<1M\.%7'ZM4G,1"BGO9M$J>+WM,7FSZ
M^*+)G]1V#+"0RSL61SF5.K:!F3W;J5XI9L]N%+B8/;LT>QP'^R4ZAX@5"7%E
M+#))4*1UI$PXK8)Z4J[XB^TV.B2-H3=_ULZ7?!/^,6]GN7+NZ7N*%!]4#5PQ
M=0H1#E^TA0@'H,"%"'?J_WL5O*8:":,-XDP%I+GPB!+#))6<,+VY=VE;_7EW
M0(0:#VO74B'"0H3#%VTAP@$H<"'"71(ACC))#8Z=C2E[=S8@PQQ!024A4G*:
M,?]L38%W0(24#ZL=4B'"0H3#%VTAP@$H<"'"G59(X9B4D@XQ[C7B@FCD- VY
M'3&7'O[A;L,CW%HGXF<G0GI"9/$(AX8CV]]"O+VD[XO*\<9) W^SLV::EU$5
M^N5813N=P"IL\S[A/MU;_?YWGRDF['5ENZ4)%WU:+.C*]BMZD1>NYBU\5D]R
MMOAB/H/;5),X@P_@]WC;#1</+65T S.:GJ/HA8YHQKO0S',W[&(V/5\AW>V2
M+H;3%B,(C$KF$T$Z6):/7XW(@KF$7-2,<DPMS]& 9SM^]2[3Z8D&DY GAN,!
MU\W=4.P78S,5'ARZ: L/#D*%"P_NN,]8DIH&ZI @-B'.I4$Z&8-8LJ&++&#C
MGO'(U^?B077"\+:*J@H/'AJ([%N*A0>+"A<>/"@>C"(:K[%'5FN9CSZ7R.5#
MT$V,-H4@<)(;_3:W>,SL,_J#;%@'^Q4>+#QX"*(M/#@(%2X\N%L>E,9%8JA!
M@L;L#T:,C+8<<2:%C]1)GO S'FW[?/Z@,+KPX.! Y&8NN1QY.VCV+%5N3Q4M
M"#+_]3^^H=\\OY@?1XS;$ORMO'C$2EVD72"D0$A1ZB+M Y%V@9 "(4>GU$7:
M!4(*A!2E+M(N&QV.9*/#CQL;&EZ5O-I7K(8WTQKFX;FQ?EO"/7ST>;*\BXR/
M0,8%)(H"'[0"%QD7D"@@412XR+B 1 &)HL!%QGL/([V(NJ=]A9G^;-O:EW3"
M()#G.;KU#+-,^[JV/XMB_^N0.H*5$NYG/RZ!4,%QHBA%$1!W&*:/88]2<D)H
MD8@1:1NM+99A^5_BM*O7[O#S6J%V/@4JAO<S.XOMN_3F/$Y!.WYHQF,[;;NO
M@'T'ZA*[ NZK:FYZ3S4W'FUM3],.<.;%U'(7BARZ: M9%K(L9'F]_X5-VCNF
MD1,F][(P/!^IR/(.X&"2EYSKK?2_V"-9JD*6A2P+61:R+&19R/))9*DL,RP*
MA6C*YP\E9Y%-3"&-#:7.8FOE5HY=V!M9DA'=5O?$0I:#0_1"E@-4XD*6A2R/
MDRPQB3Q*BHA-%'$+/&FI=TAJ*1QG3 ;-MM%)8V]D24=\6RTU"ED.>=="23<_
M!VK\4$Y.&%#"^>7T!1NNI5-ZAAVFI9.XUL$:A41R!G$-IHO1)!]"18VQX.R;
MS1[2VT@X+Q!T1REG6MJ'#<[6*20Y=-$6NBQT6>CR>GV6TQ;SI)!5.=%L@#@M
M8P%1$PB5!/Q_1Y\CY;Q3NE2DT&6ART*7A2X+71:Z? I=8DXP41$CSK@&ZE,"
M:>$HN)C:!&6%-98_1])YAW1)1J0TIRYT6>BRT&6ART*73Z)+P742"NO%@7XJ
M&.0\Y2@02X']DE1DXR"C;:2==TB7=,1,H<O!T>5ZXAE^MO#VNUS%C^"V[MG;
M$01H8_SLQ_.PTW>^0LMM9K0?+99</+D2R4HMSE8E"!?V-/;+#-D$ W]EQY_L
M9?OZF^J/+T=3_KBN*@L4>SOOL!%^#_7'.^HCV(@Q]NV=)1(WI4/H?2/>;9G$
MHR7X4S.M9F<1_C>-L;*34 'OQ.H<+CAKJPB2"-7[>#&+^02ABN&3BF+*3JJE
MS&^'P'N'L[?WO9W6@](N,141T9&#1YLLTAY;(&N=F-,L8;T1-'Y,CO7-9%:'
M3.7UQ_@^^OFTGM6Q_;'7U_#3M#G_OCF_F .EP]C>I9M6P)MS8-?9/:<U_?SV
MIWL8GF%RPK]P@.\@%+-O1=IV*GEDRL9#H"%;@5I(Q /-AT(3EA4'="H23\)6
M0BX#43:J3XBZVZ(<DK*=5/#/1?198N/+DZI)'39F,=G)Y>]_]YEB8EZW,#?G
M ) PZL;_5GV*TU@M*"=4"<3:?0G,6#\?=[+-]PF] 5_]^,O["F;/SMO8718_
MQZFOX9<+8"@8Z^*1_:V;B_SUMG_$*3 [L#K\&00&J!W_.;?C:M9TU]O^H+?^
M+LN;+(=YM9"Z&\&?IA'F+,/]K$9+%1GU[SFUR[=/CZ$&>FS4H'R,5"B"HN0"
M\>@-LI@;6+<Z\6B,%G$K^<1AK%9"Z,&LUB.DAN@XCH%:9'BF!N<2TE*"18)Q
M8M1XY]16SH<<B+)Q<T*T.@AENTD-'9+"56T=X*=P TK7/9)MN!OR2+R-GR?5
M?\_'EU7FT9-U;JWJMIV#&/_UN-8SY3Y$Q0S"/,)Z)B(A:S'0B!%2&\$B(^+F
M>H[)8PIF'AAX=$$XCD6'8J*6.6&B]>+F>OXANMG/DW8V!4]W,OL)WO>6)?JW
M]S^L(H)R?:4B<5](4*N1&/@RA:O'6?#V% RE4["4LBTT\?4%&$FV$\;2+,K*
M5[UM9K$=56]:N*SY6&=;QEWVYDZ<GJ_LL'YMSF&MS^&GZ?@28/#&34[R@[*I
MU%1_M5-_5O&E(02C [.L75B U[\%?YR/0W4&AAO8@Q$$&&>S,8RBGH#IV)Z=
M+$GN038H/-[F3UP]Z2W.SL9KTDEE9[=_/8YC-XNCZMWDYK@_@5F:(U_=:!8&
M)K!$ W3[?GYQ,8Y9R4"L/Z^$LS05UZ4"DP\WK:?3^+'QUL&J[YX)-X5;]F^[
ML%*_(*5YFP5^_=W@JBRACOZ_0D@G_4.7$PB6;O71CN?QEJ<NYJ![0@8GL.YC
MVZZ/%+3YO)Z?YRO[(8R&M1H* =TNF/O6^Y?5_ L8<(W+ODKG'4BI5^S-593U
MZRN5_]^N:_VH^G!6M]5YM.!'K@_R$^#E^I"VO1[@N5</LP%<69#"F_=_RQB#
M$9953*DWIZK_MI.YG5Y6I >@4?6W+.?UBV_:"F",_7->3WNY@C.;A=Q=LK3
M%G>_\H0G76XIIXS:E;V;-<#"1-=^)=M\\>]_Q_CK.J'%EV+H/@ 1SLZ:L,2U
M*X&"<C3G>7I@]A9WR$[^NO__J<-Z8*-L7O=*UV3-FG3GLN=O+3T:L(+.-]4+
M:"+T+)'F8U"JU<B6\.XBK+YLHB]'<!&!D\*H^N4.:EH79[YY)Z2S)@</O@*=
MK[CJ=A9:?&/VJ>G4H8\ZG/0QDAN37GW7R3+S]NS+BO.'>UYG(>9C<PV9DC)(
ME1 5F"(NLX$8;$+8<1HU SEX>].4],$0)UE VF"'N(H&&1L$8M9+[:2B@J:;
MIN3_=*\3PYL^HO2V4]%W:9& [MR_]MU\ULX #$#AGAX?/.&*GW!Z(#&'>O+
M17_20<N**^JTMFI[*!D!S;@6@ R><(M.=SF\!Y!2CB:>QRLX'2X7G717=JN_
M?U>Q6/OPL$]V"MC:3,:7B[!HQS!+6NG(RL65D?RIGIVMB*9GBU[(Z*:0^T$N
M9@7F8D402[?^&B=:@.!QVURCET5H-SL1P"#_=Q71!9^K<UOMQ&<IMK,^(E5W
MIG,[ SP%HRB#>D\QF7L6QO0Z'76W646-)SE5N:Y5J_'>Y)3E!/5(?SNFWJ)4
M;=;$WK-9#!/NM3&>+(A)A,] $KXYG<#2"8LG N,LR>5Z[O!:7+A_+".W ?0J
M5KXA*7CG(PL ",>-QR8B)6/>O*D!M5DP2')G(Z6&";$1 ,"1:*D L%,(&O$H
M!;(Y')C  E"&8H^=N8G:/R]$^6[R_=5<YJC VSA[ES[8SUN*!.#1T-.&RSC
M=Y/8FW_V\Q]N65\E1'>' %<68Y=6"GT**@OR3G.\P[?8VY"=<]5V2:ON*]]7
M5.+;4T+/_H;]I?EAKVJ@S-I_H8PD!PS\Z]51F+\ \G6FSDG_I_!Z6$K>&0X]
MSA",<EX*$![F+,3LS>8LW8H[,ELN3+I5EG!)UE=F7$<,,T![8)>>]FZ8!BV\
M$O@)&=AF[37"F"PB:=XWTWRK'!V_SZ'L^*697=GJ"[/JCJ0I7-:<QZL#2D\J
M-W^ OW?-,\V/7(O7?_F!&3MN/G01B^H(#V31SH%H>[]G:<Y]6!]0#8O#WQ)S
M[ ;B;!L[8?;O &.?QFQ%N#C[E-V\VX-9<[#E)DOZO9K,;@Q]XC?;'QOOOY81
MOAZU7,1!NEAA;_LLI06.XWR:+9M9KPK@<5N8W_FDLZ$ZI>GLM:NO3IK%JV?3
M9(FV\)UIS/*\"L7>$H-]; G2U\W_ U4M+B$@O]1QV2*$*(N)#(A&91&W(N1&
M$@(E\"IM"MHX3YY2Y 0FW.35#XL)^;&;CW>3A<.8OE_-R"_]A#S9<51,G!!Q
M=T/)82#UT::JC4\&&ZI0=#(A3IA!ED2);.*64Z*X=.HI54R[UB8E3]@7"M^'
MI$W7<]&/!%!: /2K"_<,P)T3%"6M..+4@/K*0!!.3/D4HXUXLT'O5Y0"[5CE
MR0D!71"L0.B^] DG*QB+H$K!( #,@#0!+?'><&P"DUYM! >^IMIGY_HD,#Y1
MY! +>@:<OKUU$\._5-6_PW\?L096RKBXX567,6J$D0!,*H!>)8S 6*1(JTBY
MQ4(%MY6BY%][#_,7.YU=?IC:2=NK2/M#W?IQ TY5_  /^/,8?)IOJMAZ>Y'W
MK$SG$<:]]L+7HS*A;B_&]O)5&L?/&[LT_C%O9W6Z7(JWNPB!"S.=O>["+PBF
M];Q]E5VR,=#F1J#F:I+6(T);B]RX9AR>KC.WRZ.>Y#="G5B^XA%?D-B&,&#9
ML]7B69N@_B*"\;<W1C,(<7WSIX4>5ITB5NN:N%I[W6:A[6T9.I8 X?=Q.K-@
M R;KZW&?1Q_'+I[A+JMF/JW:N6OK4-OIY4GU/B/L%*S'O]0IOO=UCG*TU5_^
M\GWU79=57_Z]^^4/50ZS-)\F5\49OS8P.:/JQQ#&$08%M_F8(Q ?IJ"B?<JX
M^V;W>W^/KJ8+[-'-B,&@(+ZWOOOWZ-_X6GW_<1DZ!'/JO /+!F=R(=0BQYQ&
MQ(6D!)4*K)Z-R(/#*EG-D,^I;A[R.8N*"^1-E-(JFS#>R(+\M88WJ6>7JVP(
M"';:GM47O\1IWLQI3^.?+]\VD_RD:3/.M6#])==LGXOYVM9I1+_."!IXF>2W
M=Y;*K0>#UTIXEC4;ZP'_91BU7=/A69/SLW850;[(N-J'1#MT6-1@MO"'>A5?
M[K]ZL9YQN)B[,1@E30Z)YJ%T==:3>-K,:CM;E$<VD\DB^-WE@?M(XS_G=5LO
MG=$EK%RO0@(/-H=00]6%4>/GBSAI%Z4X^5%'EGJ4-C*IHP;/$^PX<"@P> I6
M(.$()<%)6'R;9Z\IGIB 5>8<@84J RQ4(;+?:L&_Y2&QM%%[_(N]S#4)[4_-
M]->XM9)C/+J[Q=T@5M)5P?'DZ,K6C72,>AL0%@$,>\X(LI031 7UA@KC8MH(
M=$AFO&>$(6/!'>7=_L:\8TI:PD@2'&RE#6?@N53G[F;"PU*==0^T*Z^(UI\M
M$7I00[ZEQ&/3P.J60@XM#FKH-Y*:[8*0EL4ZMU'"\=6AF,@,"0Q,+AT<K$YP
M]"W&"0G%9! &4)]MK.B\$XW9W.M&Z A6FZ3(6G#O:>*:*!4-5G8W*_H.@HM:
M2Y[/?'&>(1ZU L0A!HEDI5/$P;MM;);3V'A.)0/[,Q$@.&F1(0!TP6#+C0\Y
MP+LKE+K-5#P(V!HT4CTD=SQ,H!H]*.JWC5#$HWN[+")#7]O>Y=YF*0]M[[+U
ML*=S3AL=%6+8YA"\SOEM'I "3%3*Z2#51E7U8\*>[^-IQI!?XT4N(IV</DNX
M$S]KK/..N7]QX4Y^B.'.A?Y5*P6L2ICSRQ)[=Y$+1;MH2"^[MHM.^N;\HIET
MOP+[P3B[G9(7T[KKYV'!AIR<YJJL>E*Y7#"6J]@SF7_L(Z69.OL-1* F77%4
ME>J)G?C:CN$[O<70F3CPM8^V'G=EXYFNIO%T/K93<!2F\6,=/UW%2/U9'5/5
MK,:;38PN<W]N?P/2ZP.MW[_[X:^+("L,+5_217K.FD_9+K9C0*"\]P8\DF8^
M]0OKV+9M5X4?I]W )CZ.JG?S:?5]]\0?/T??UPZ\2ZGV5X_Z\=WB26>YU"W7
ML]59;>J4JT3M8AL:C&? 2;?2<"XWG",;#>=*N[DOM)LK\'DEJO6X:X:KMJL;
M7H!4,VE/.G1J5V"5MW2>VND#0 F>:O-FD7R_*X@]MEHC99)@47(D@@+GF_.(
M-+8,1>&4UT(D'S;.-WV,8;K<W[>BNX6E<#TELOAPW<'%U_Q;U$:??=S<V;6-
MDV_^!!PY<&^VN4GPG7;!N$'?LI%D^\W"W9\6M ><5<5<TYY;[MY!W$V_2V[2
M-N,Z='$GL+;KOM5$3H^T\_&L3Z>L-IE=W6@YDO4;>A"6RRT6YI.KVKOU^^?-
M@3EL=>U&N2OP^=),64_>A-[S@*MS<J>>#)B$;_?T[G,F[_#T:' T$ OK@MJ\
M?Y9(Y)@Q*'!#E3(Q&*^WXNGYLQCFXT6)56;TZ:*+TJ]U^]N?+_._/\&":*9W
M>WZ%2*X326J "CYUNR^Z50D+%!92I]VWYC+[W?5@)\?)/&8S^30VIS!$,+RS
M$6^K[ZYMP.AH9FV_N@>'L '=^<.KX:Z-EQX&ZGN/]QB]*0@[GS7+ON%Y/* Z
M^0WRY0A\\V8.7G[].8;7_>,,'H'COKC>YP[J%VU\U<:N&^(J2M(ULN]O_<UM
M1T#GC6\NE\1<OEK>X_7M9T'W3Y4XQQ/N;*>^""F,,)8/N>X!U\@1EGI+]Z(C
MJ;8U+C4B2FSI7MN4EQAA3?'5_SWH^3N6G1PQ;!YUKWM.,M<7#S_)_,$'S&_A
ML)9!.8[/=V+VBQ7I%D_  5'FOW:9N6<7]"UBN%?P>DAQHQNA9OUH>RU7"ORU
M3\#]F!-P^UT PYN7>U;$8P5?T*:@S8M#F[<YVU_ 9F!@,T#3LLQ,$?9>A+U3
M6KA^5!H>Y9/2ND#Q;8<!#F1J]D,<UXK"]KM:OC!IJ]/MAC=M!;Y>A+ +?!7X
M*O!5[.(CGYDB[+T1"RW$,B!B6=\H7_CD$!920:V"6L.9FKVA%BVH=4@+J:!6
M0:WA3$VQM0IJ%=0:F+ +:@T5M8JM=2@+Z9Z(8U</\]"0HP?!)O^$Z0.A[K]"
M:&_E^[]>;4=8;C!H_VU]9\)R&T+[ZG'+Z\GSL\E!5YJ\NTGKRNR'6-?U)1HJ
MLM^MO57D7>1]!/(NV%)TO<B[R+M@RW')OLB[R/N8Y5VPI>CZ"Y#W-J-GB^#G
MNOBZ[V\OG+;> *&[]<N*K[UMIK.SZDW7\\4.)HOSPE?0EN0]:8:\Z?10I'B
M6OL5HAU8 [=H*">21<1LR.>C:HZT-A01K!UG,5B8R(W#_8PCP3N"3#Y8E4=G
MD,,"OJ@HXU%'ZBR[V6_J6I.IW%SJZJP;\M!C;>@]O<KYW>>BOL@%?UW5GD>K
MOBU@4"BL4-CA:^WA4AC7/CCI,(J6$L2M24CCZ)"E DOOC>#*W*2P1)D57!"D
M2#2(*VP0L)Y%5!&AN/))"[X7"KO[3* 7N> +A14*.RZ-/A0I'J#6'BZ%&99D
MRAU\J=(.<2TQ<B8YX*3$$O<R"+[11ANN]!QKCYP50&&!6&2-B\@P!ASF-29L
MXQ#$G5 8+Q16*&SO8% HK%#8X6GMX5)88IJ;:!DB@43$#<'()$[S21")\1"<
M<V3CZ$9L0P"N0LD8C[B,X+D)II!T05FE!!5ZXYC#XH6], I[AKT!);OY7-CP
MXWS:7,12&' (ULB#Y3UL<#H4*1Z@UAZN-<*""0E+A;"DV:'6&EFE%3C'1,K
M7*)VX\!40PD8*4FA:$Q 7 6,+.@%DN!I.Q<<,4GOPQIAVW*HCV3!#]BA/F8P
M*!16*.SPM/9P*4P)$8-1 CGN-8+_":0IM^!0>X4Y!N=8XIL4QFGTA'&)G+$\
M.^$:G'"L$4V2A*"C2BKMA<)$H;!"87L'@T)AA<(.3VL/E\("3P$+)Y'!X$QQ
M#SQFJ/7(4Q7S.:=.L(WB4FHU4XPHI*, VLO?=BQ8I#E.3GEG/+9[H3!9**Q0
MV-[!H%!8H;##T]K#I3!K:!!6"$3S4=S<!8\L9QRYE)B3V"1GPF9:$VO%E4,J
MV(1X8 DY$1C\Y))21A$6S5XH3!<*&PR%E4V;!Y36?//+F^__^&YV%J>E9.40
M+)+MU%W<WVQS[Q!V*'+>9EO3P6C^X5HU3&FIK :#1N?T:# 1#!I"$1:,<HF)
MH6PCMNQT3,*KB)+V\,4D EA"WB"1B)/*:2O=7G9]$C6H8JV'='W=.VP,V'DO
M5#E0""]46:CR!5)EE-)+ZS421''$%<5("Z)1U!9[(26WFS%L$5S$QB>45"!
MK\(@JSU&*2F6:)(V^;U4$N5S' I5%JHL5#E,K2]46:CR@*G2@AL8>3)(1=T5
MT"ID9## @BI88ZAQ9&,7*Y52VY "4H)G>L4!&9H$\L8:B:73R>\EW4MQH<I"
ME84J"U46JBQ4N76JQ(P0&B1!FAJ+>'8MK7,*.:6%%PD3HC?2RMHG*HR0*'F,
M$7>:(AT)$&V,%D?P.0W;CU=9J/*PJ+*<MC68Q/*'9F;'U;0_<ZO4#1V":;.=
MXI?K*$5'-,-4:.9N'(MQLV7-?HBLAZC]AVO>&,R"9Y8B(EA$G#F+7-(Y$N"B
MT882RS:VW[(0=0R1(V6C1SP1C)ST&@7&/4DLPO_D7O++>%OVS0Z0HU@XA3$+
M8Q;&+(QY8(RIDA&8&HF$X0QQS0TR GZB>>NNYMGSYQL56=Y;%6Q$+&*%. X,
M:<,THIY8QYB5QOO"F(4Q"V,6QBR,61CSN!B3*AN$!%<Q.(FSCRF0<Y:!OTB=
MB]);8<0&8SJF7>ZS[ 0&']/!MXT(&DD6.>&1"2M58<S"F(4Q"V,6QBR,>5R,
MR256GG** A8)<>ET3B ;Q'F@(1ACG-@\ZRTF&8VT*'&K<@L/ BRK/,*)8B$H
M#4F&PIB%,;\V[PP_6Y#-GY:3^';>G8@*OX?ZXQT;C]F(,?;M@[<>$WK?"SQK
MDM@UX_ UXNPOS8]Z5<]@%/Y. 5];7VW5I.K[:0SUK,IKK;*34+V'=Z@3:.ED
M5GT_;^'UXK1=3LL@WZE:5YIMS+[<Z^1O;S7]5$_LQ-=V7-63=C:%93*9M=7L
MS,ZJ=N[^$?T,?HG5]\TYC/:RFC55NS;Y?D-5?*\JTZPJ%U, TRF,)E_7UNVL
MN\"V9YT2=3_$?\[KCX#/\-"3"B[^+7;KMFJCGT_K60WOD*^UW@.FPL"FT4?X
M EPRJ@#VU\?V^]]]IIB8URV\R<?8SO*;5!<-:,7ER<;#NKO>\;QI7-PA!OBA
M2K=*Z%,].ZO.8#)6;PPRF)SV-UY\%#]?-"UP4)9:%EXS@3NW[3R>]/^95M]U
MM\DO$3_[>-&1*<CH;Z/WH^H#T 1\&[[F0&UZ"?^AN_WL\B+FRZ[& _>KQO4Y
M:$T856]FU7NX5SQW\ 2&3RJ**>N^^ -(K_^4=)_2DVN3>V9#-6G6Q =OT[8-
MO'L613=4($W0P$D>[IF=G,:.SC-!PO0U%[T6K#ZJFFG5Y*X&JZ^=Q0"KXA1D
M/,W?[IXQ*DOS 3A\<VUULS&-[46W0IO;5LB:4N0K_!*H\R^?SIKS:W-_;G^#
M0:VO[1962CNJ_N>LAEO9_*PX_1CS5'9?O&CR,/.R^#3-(FE2RF.\8QSGM@8#
MK9[$<%/E6E"Y67</N%^5[Y(_7Q_(ZI8P[@"J"$NCZ96L&:_+Y/J=+^(T6WAY
M(*?SL9VN%B4@P/P*KVJX[THR2PA96_/P'/@67%W4]*X:,UC@L?H$$WF;!7"X
M[HSG0CJB"2**V=P@-R$7 T/&*Z^Y%R;AC1K:I.%C0QFR).3N!]S!3Q2CY!R3
MR3(A_88[\VM?G??3M#G_?H&<_P.+>VE7_3SQXWD T'S3MA'^/WRPGZ]Y.7][
M_\/*R6'K/@YBUYP<!!R7'9WL>+1Q<F?O!JFCLIRA0+#(FTLM,E1*)&/0CA$5
MJ-2;M34B!&<BLC:7#A--D1,:O#C##*>4,"$V#MH9V&M3H@7%DB'I"<QV8C#1
M)C=&-B8F%05E-&UL+E+.BY1 5."M@J@"0?#"'@46L9=>@;^+!_[:F%EK)1?(
MTT 1QUHB%YQ%A"=* O4"VXT]5<0'YP,AB!H:8&%@A9Q1$B6M99+".K>9%][;
M:T^:6_SX1WSP9-]F>W"UK.>M$DASG=:ST3Z-%YFI)YGTCPN/L;;*X@RF'IM^
MU[L122"#C<-.:VJ)O*FJ@.%<:$.1\A'P. >G+!8.1<H\\YY;3O;2*N\.#.+:
M!<4H,J0[XTP(I!F&P0<6>,* S&8#>J,2ABC-D3 8%B-A^:3IP!$.(L88*%AA
M>SGC[*ZD&DG:2(YD<C#:?)ZH!11!5BHF.3..N VX2<EAZX)%T5N".# H@LLT
MTC8R0P5(".^E#.6.0AOF: PQ(!LQL =U'"P 3!!+7,J,D#%LE*;ZP*/(>4*K
M5#YAG*5L/^06Q98 \43@F+UL4B6WQ4 /&SN_S3[I.7BCV?9?<Q?^+7L7:WLE
M5F[.[&P:8^<\3\![@:].9F=M%<&\#W=YV=FQ'@WJK6]E@OV-IMIZ-,X<B2_U
M]G9'WMDQN*,+PK=5=OJS<[SB_B-F?>L$[=P1*L XYPF0U8%EBBBSRA#.! YJ
MHT$N< DQ/"%CLU&;F$1:@@NCK(*/@16Y(H/!TP$MS'O!$<03XJT:"I;GH%YE
M$YH'-;S1M13*%Y9\>[6T<]STN-:V%]([Z0A*DGAP/A-!FN?D+\71&\$EL1MM
M(H.3DAALD6 4+'J;G4]B#6+$4:N$P'LK2C[8M7WK>@8[9MI<VG&?$AG8ZM[(
M8PQJ=)4'[>NYNIE/OTCHS7S6SD#6>6UW$?U?YM-F#",]@1FH?H17L*[Z>>)'
ML JZZ3JIX$7\V1&&6QE0N]!"H9"CIEPZ\'\H9D@YJCR !$YRPW&*E$C*A4&!
MIDST8!=HZL%KCBKR)&G YED<)_8HUU!R 68)O%)^(QBMS > @F4C,16>*6LQ
MV=B#D8-IQCB'I.+P'1\B,EH"W#DOO-%*@,NXCS<D='1;7]R!(V#J%N1]MLQB
M<5Y+^-Q:1O(OX,C ?Q^Q]E8JLKCADA!E O4%S;?68R!$EAMX$($8]B9038CT
M&P&@Q]0<OY^[-OYS#G+Y\6-.P7Z V_UYW/C?OJDBJ,-%+A^:SB.,<NWUKOMB
MH6XOQO;R51K'SQM5,?\ OZ1.ETOA=Q<A +KI[/^S][;-;>/(VO!?067C?9Q3
M-$>DWIW=K?(DF3W9LY.DQMDS]_WI*8B$),Y0I(8@;6M^_=T-D!)ERY8M2R)(
M]=;N1I9(O#2NOKK1: #OU:3K @9])B]'7(H09M4/IF>K(2S/ _5\+2_[R-DS
MFT&U621!A)VZ4))Y015/".V!/$ !NTM\EL9(/^2T6F?W6F.$N, M7P*/*>0M
M54QE95%NUM8\IBOOCRR009$1\+. [^,;SOX;:D0GXNI'6J;>++FOT6L=ID=(
MNS?H];W^T+UH\5[G C@72'LH.A<"IC$C(9S.H/M@Y=#I=(7;XSX:<YC%^(,V
M?.IR\'W:?>%UQ:#'Q7W2_C&3H,A2EB#P:3P68&EOQ$>>BJ_CTB_.NOW&M(D+
M%;O$,B]\OKA8")Y<J(5!,X;'2V/TZ-WUV?H#NVN00V&Q7\0<@"XB=GTK0)%
M^RP,SP')!7[ ,75K;:ZEG/A0J+PRS*U:UV4>AL7SY6D!)JVE"Q9@>KJ0*6:W
M;5)[=O[7O[0[[XM?U!_O+ 8NGLPPQH I0NQZBLEMUSR?X,%DPYN"#697DT2H
M9"PU";&JF>P]GP25+$!> :^HJ8\U;#DNN'K Y_,DO@-W.17A@KUMUFRM*\;M
MKNOPBW:_"P36'Z@PS."B[?7]KL^!_]K#?9#>!RZGBM82X6/R0(GB'LT/Z*WE
M!_2VWN_Q^*GE1H"*P=.ADGRT2IY=C^!HCK!7O' +K[!QEJCD2YDF(IK QTA-
M?\9A%F#N:\1U B:;QTDZCJ$*'8) :IKQ2212,'&SX$[E:T*5?@*&!J=-T(Y4
M>-,(!#+!Z)#*.T!B@=8CU#,)!#=:L$D8PU2*C8)X#KPS U%E:F=#'LLH<GN+
M=%$8M!L1QG/5)IV>&V5C^"%+L EQ,H%W_M29>X8NK^W+Y]KKGHSC;:<SKNM5
MYD0NC;[2Q3S.L%Q6YH_X\1QT HVVMLOPRRCW^H#L?/'PW9E(I[%?2KPMM!43
M:T'K0<=]*#&=!HE_,8>YY((M\U_9.$AFRC&0*CE_F8N^>B+W1Y:-X#D5VPQ[
M".Z(,F_^JL5S\-($NC*QE]>QI<-*.B/,N,<,,)UQC\]?15$&5 $>%K 3@Y=^
M@L%A3NOB?Y9%H@>;K\3?#PBWGQ>\J7:SU-$4\[A=7>VD-$(55XL#N22FRP-)
MYZ =>D_>!1]#FR]Y>,L7\OT;]L/)PJ/*) SE6V)HT/W_9SXW(V+U^?NGGQES
MP;>Z^G+UST\_?_KRO=@E<,T^?K[^\)_KZ\]?O["K+Q_A?U?_KF 7W&--_[_7
MGZ_9UY_83Y^_7'WY\/GJW^S#UR\?/W\OFOO+I^O__/N[>N3KMT^_7.$/UP:U
MGQT HS4+##X:+;D1R4T@;AL^6DV)/2[C1.B9X?QJ&2*"29 %,Z PU'$\F#WY
M,;IP*X]+KJ),'^($O"'M5YUK%O+>%[_JO_WW%BM^N14/OX,)X.K+W(\J?EO;
M1^F_?X?[MG@QBPN#L8 )=B!44HI7; ?%J5\^;RMF<S/PLG#K%$A,JAV2(4:O
MT-G#'JKI8!)#(1+[N3:1Q/?E0N+:D"X9G$+<! F>YG@<J+J+QW!Q)!@%H0Z-
MZ0UINE3T+M=GCE C5H S3S_))@9/'DEO[JUV2!T.!;;#Z*C>KZO\_V),]6[3
M(,J$VAXX2>);A0]Q!^WW+17P6.V0T-!NOR_M3 Y!%.(@,0KUN][^NDEYL.AS
MC&1.0*/C1+Y;M0X*%,S#[<C8$L"UG^G8FQ?+%/<R@^P!^!;[ Z9(J $J(@0R
M99@JACN.I<U^S()0AWU]'[]%24JA=VPGD=2BR<L&/14A  ^$&\&@J-@S3WRY
MG&J!6UP2.<9Z5AW'V>"O0GV)RH_[.-5^TR"2\T")A?LW.I<--'5=_=5T-TTR
MM=<:IZ<12&NEST6_U=[77!Q%,[0NKX06%%N(,$<[]L(X@H<Y8&,4^XIE$P'-
M&^'&SA3+3D6 4KB!>3,RK1YF@5-U^ !\BJG? +LYCM.RDF6H*YA!$3=8VS0#
M48#\> BSY]LX"7T,@]F8M8/<!8^$"RWL=:Z#0D8""PAP36"F<W=!; AV:"@(
M<PJ8ARF\EEM):/.0RUD D]XO5^R<,[5$K/H-4_$$]ZPNM^BN27#VRY>K=ZO>
M^2($.DX6[ 9,#^ /;)(WQ0'!_?'!30"#HK?> ]O$%Z5]X/ 3U)&_9>.\7.>5
M!9&.LV)UB9@ ?I1*0,<+8V:M\*8W]2]# O"3%()]@YZPSQ;[#": .<:O0Q2&
MLUB9*RRG6?:E'%G!T<!\N:?"*TO/8OG5TB,H9Y^-@[ X% "Q=KU^8,.GXGR
M#T@)@-NRRW+]Z</*R<"ZQ2C)<+G,=1]&;\@FKH\G4"U(.H$_P'K%<Z"H5*#:
MXN$2Z^2Z4CLU2EP9GD1,1231$9,9M!F)8:F4>+B'VN,/0IBR;(X+!WRF@__Q
M;93_F=>PI/.R;[5N#[41TC00*6)CG98*V^FM]Y$/Q _##L8:#SV2 EHJV)3?
MB,+.JN#E*(FYKUN!C"6#<8#60K>ZM'J1[W\<HR\MM7GC&GE(B(4+&D?+!93"
M,;@8!XE,X<\P5:=U**<65SMT*<B'F#=;,N[*XA6>ASI< 0Q%JGQ>U=4YM@J7
MIP+ME\SX73##'XOPJBB2T9;="'F*_(D;CN)L,M5CH.OTE%^#2S-8HG*C<]\A
MB=2Q)&L]6WG@0.7H.4U$?FP(NCK(X&7B/82JO6:2;5)ZUYM__,R]) :_(8IG
M, K?0>M\:18W[4=>>W79U5DAH$L%Q/,9I-[&X F5(E':_8"JDKLH^'2Q 2_W
MXH&LD&DD0S<$*N7YJ3R: ]5\4/O8H+7:;U2'Y_@PI>;)TC'%)P0>0K,ZU"AF
M41Q=J(>7A]D4!_;8*_N%] HN.Y0] LV-04N#/'M")WJD/#\$1?#?1:0G :45
M5_7%>'G^3:G5?,+Q_)[[30;US4)_-?.-42+ $.*!<( 3P*L'_H !8!HA.KX
MLXO\U"8UTTAX/D^&=NB!D3HY'4@WB)7/J3_1O+A&>O9K;BB5[5032]]:ZHS&
M=]D^K1ZSU"P2O?50V0RK-!D&!"7\=CF1D%9I#BNS^1Q/\IKB^C\6@;^N*WNN
MZ+,UTDP5:5JE^5G^V$3$>#I7,=V&]@3%S"#D(]2B*3 #6"^89%QY>DJ=HI(I
M@PKO3=#S66N6'\@DFZ]FWZ5.KJK72Y2%@ND'BYG2C8HGJ;F=/IS*TE+&&1.&
M(& 6+* !,%5"%VB<A<JI'H]AYJRF8*ATN?[II5,I<@'8#&:$.!</='M\44P/
MX>-,A;2@RQ^^_N_GCQ?.,)^6YH$$9#]P1]2$6;-!FN>#C#/EL>0EK+L4F-,>
M\GQ6J9M23'85+Q9 06^GW%*])%L&3]$C14 Y@>133$Q)PWK7O'8C%(29MGQ@
MEF>C=JN7LJD.X=;4;+'E^1/_>UG8/X7B[L<@E@N@"]RL99;E,FKV^C5B5T#
M(7/Z>JJOIGRKO-@-J2(OR(N]/Q!Y4NSJZXUIL1'[I,O:D ^K"_CT[4J_J6?2
MY6J^7U]]*])P9;G2+_]BUR(,15+4^4\.HF??>9+H@.TU]"04"_V-LJ6  V!Y
M/P/+R\[7%H54M<L2K7S9!LK57RS[M:%<$,LTD,N@,=:CB3O?5JQ797(!Y\6Q
M\V4%J[Z6V4+79QCAD]H]?LIK";$ZA!=@S)_[?V0\0052<ZH?$QYYTU&63"Q5
MYK\ "@*#U^,Q@D*':<#9P-F;#C6H ,K]19 Q4U%O<9')^R&I]?COO8"4.A)T
M/2"5+P)B_/)^<(M/H"\H^%#D?FJ:C?2:@A2S41B@F_-=^37+\G+/I@BXEU:*
MMF7&HFN%4D M-RUD4B=3^?2&)5+;!];RWKZ8O9I+VD92OVTD3K]MR(8 HT3V
MJ/$_N737-J6['B?=M2E&AO;U4 +JR\^F+])QKE;;3K[A70O+!(!\;T@5UX+0
M#'&'=;ME&N@RTZJTHTA?HU$D;>#D$=,-EC-)M58=S-!OR)U$?4-  @2PX&$1
MF-YPJKX^:"H/*NO/:H>1+/DCJXL]9KARX0>8# HO6,5BG@I@)+E;?,=^R_Q)
M'KR/QWBIP+UE"FQ;)'1<'*\]6.YC@L=&X#/K^SC4UGJ=3)JFR^.5]>4@N)JH
M\B\R3*;#>PUT'A3'R3'(;UY>T'Q4GBN.S>O*\DRJ\NKHLC-ZLKILJ2+C9::<
MP&6^M4J!3*$.7\7_5W*'Z4!:+&PD8HS+IC'[>8.D/P82)O>R&*&KB(<+&:BT
MC=6-,1_61O&7?!3AD:\J+665! D-VG"APYH@H"M?XE3@/,?P:8..NV6S6;[!
MOWR2WP8V5(];9MFU7$&W@N1![M@R)8P,=4T,]4:M))M<"YN,>VQA'A[&MVJ9
M>$7)N1';9D_1%JR86$Y59LD(8_]<Y]#$T6]@P=1[RT1.)&<51L ZMS-$$7LH
MUIK'<9Q&<:I,&UC)-*9HZ0ML2WY-1GWNTB.5O:>R^SQ$GMWBS4J8:ZU(0%Y6
M%N1Z)'=A6\QFJYJ^)&:37]3W$&H\2^/B@E1L"Q 7MAX?OPCY CQZ*/Y.^.]U
M5<.6W3HKGL=55CZ7XE)J%WIY%J&ZFU<7_49=*OJW=!E(NPEDOO?LLG@_?ZA\
M%6Q^%E_?[@T'>&+?ZJ[2!P^U[.%@N.499\OO?=MI]UY91I/:T;/[[K9GCM&.
M@>VV.@:TPY1Q,:4=]<7'\I[C$B5-M2'KS],-3/3P4FI]8_3K+UG?8(:W&J6^
MW3WHTLL6HZ2KWXM5VCAB).QC"!M$B[^HP]X.+OCUR]=;V">FID6L\#!-')K7
MS1=V'[GORMG]6?NXG]#'_=LH83^L7\E1G18],9BZBE;;R.%L+*W54[N(^(P=
MFJJ(+]_Q+WXX_Z@W=XAW1FH5T1QY;T1B1&*;;R#$ "4Y;PU1-%(NHX:#>,]8
MWB/GK9YZ1<%0TT:$A%V967')K!AF5M;N,B([8K@B$6L1:YDT-!6REDNL51=%
M(M8BUC)I:*IBK;?L@SJSCYBK+LI$S$7,9=+05,5<9\1<-5,F8BYB+I.&AN);
MQ%K$6D8)FUC+9-:B^%9M%(E8BUC+I*&A^!8Q%S&7<<(FYC*6N2B^52-EHHPZ
MTT:$A%V9+6FWCF!,3)1\5:;B_&J&)^A)?;9AG$FN;H\2=YZ8ZZN?YR+!)O.)
M8#Y/>85IVB:.FUD&8_!,@^&! 1Y[KQ@1D.2SQ#\XX G6KSUT:K#S$7_JM*G+
MERO"J\7^"D78UTCLI :[BGH?4Y #"'TE@Z.)79V/98;42=)-E#01"1%)@^%-
MDB8B(2(A>).D:R-I(A(BD@;#FR1-1$)$0O F2==&TD0D1"0-AC=)FHB$B(3@
M39*NC:2)2(A(&@SODY7T'G)\\JRKLKPP%VE_.3^Y$-6=8%CR*>4 ?4MB/_-2
M6:]DN"8:@=<+.HJ?$+-926X'P?);(T!L"M57Q2A.Q[&<;N]4<5X#GB!")D(F
M0CX90G9;+:O?&IPJSFO $T3(1,A$R"=#R.?=H=7M'O(@F5/'><WV]A%9UP[$
M-9 ?$?*S"=D=VOU31?(1Z/B,^)CXN/8H)N?9!*[N#%QKZ+1.%><UX DB9")D
M(N23(>2>T[%Z/0HOF\L31,A$R$3()T/(YT[;L?K=DV5DBB\36]<>Q#60'S'R
M\^/+CMTY5217%E_>W_&2E'I^B%'[)5[P,%TP'ODL3J<B,6*G!AG55PGZ22K:
M?OA]U615 PGO\X*!4S?,[1W2U ^N"MKLM]JD#,3KQ@B:>)UXO4:\OL/=HL3K
M]5$&XO6JP4R\3KQ> :\;J E$ZT3KQ@G:Z(AP#>1':QO/'8JA[9PJCH^QLF$$
MQHF,R<<V6L+D8^_Q_!:G,D(G+YN(G8B=H$S$?A!B;]%J9Z.U@8B]:C 3L1.Q
M'Y_8NP9J M$ZT;IQ@C8ZFE@#^5%4_-FG%.QRGDPS<%Q55/PP)\T[K8/E^ZNB
MJQ^AXRG%]SCE(4O$C8@R8<3&)+*GA]MWM.X<NK:+WJ$?9Z-0&#-1:O:>Z.>,
M -GL57P,#ZX?5G8LYY.C1=,IHG_C!$WT3_3?'/I7Q^1W=EC[)OHWBI6(_HG^
MB?Z)_E]Z1@<>RM\9&JDOQM _':U$IJ'V!]+40'ZTT/+\HY7HZ/Z#+K40'S>=
MC\E5)U>]5IS?&;2MEDN1FM/Q<HC^B?Z)_HG^EQ<.]/N5G:=*]$_T3_1/]$_T
M7^GU!CL<!71*_$^1>K(-M8]OUD!^%*E_?J2>+D$X?J2^V!4!_W*P4.KCQMT(
M;;O=;I\]NA]!;58XE'2VD*>J>R_:;V3O7ZN06\6C'\7*+H,4VN$]*K!O2>QG
M7EKLT9"%Z QM+CO T/:V8<VPP7U,-M=!Y GFMIR>Q6X%F_(;P49"1 R^!P*5
M030)%VP<>YD4/HNAP2(,X4L69PF;:QQ(Y@>)\%)X,(T9/ E=%HF$(E@Z%6P^
MY=!:3V2*<.%;'YY(](4>\#P6A.U)." *FIJ-X4.60 $V^SX54N2E,\E#Z%(B
M0"(2C:3/^!Q:<!?,>"J@[L' [IRI4@<]VSUC\;C<R *LT)>$">Y-\7=L7CI-
MA& S:,%4,@$C[[-K,4_%;"02UFY9(!RWK8J%#ZX%Y<@Y-">X@3HM]7VY28.N
MW<L;T;>[SVY$%$2[ML%FUTHP>4VC((;*/"%QZ%8CY '61H(%,P 5MG.TT)T/
M9FHPQRP$P +F8(1$\58 PZUF,5*/%3R?B$D6\C3&X4/AW_!0JL[(##K#HS08
MQ7X@)(!I&L W,[[ QF9ABFB0 /]@#"B(4O9'QA-P=!!<(=25<:Q.VJ2JCU^$
MD[,M&R?Q3(WU. A!;=0XC1,>>=, M 44-\Q\H89+EI'Q?SZ ZK*K[S_MCZ[O
M>5$RFX/KNNIJS^[O;I+[G?>5V)5'K8A<2-!(K0OPM<QFZ"K)]^P:=3')9N7Q
MR!^V\N% )?N?))8_A3%)?Y<F@90__^>Z-K)C1@FOA,NE04 4YR!]K[@":#CP
MT0#SB9C!>XQ+"08H!#;/(3^;QQ'\@(0R%HDV(I\BX$ZA_OHY#A7.OPMO&D%7
M)POV[W]_L-B7.+KX68"+!CX:NX[#3#&]Q3Y'GFVQJU^^B^O_^X7]&,2R^(U]
M3D2(=?X;S!-:J_.__J7=>9\_JCZ_L_"-BY]"<5<N\]_VO^T/MFHO_H2%+O+^
M3>,PC&]!1]&FSJ!GP)C DJO&EGKU+0X7\ B[MJ]L;>.10(NF/E1SF_U2&/:"
MF[TI? )+.8%AG2Y6<L_I62[YN:#GK]_^<\T0"("(WZ$9]PH \&0S[.*G?W^^
MOH)VRY3]'N0#>>_9@JE48Y;LA _F7;C77FA<*@*0^_96?M./LBL&>@,EYO6C
M9?' RH/?QF!B?IM.&;IQ<2*U^):&B(_'012D*X&4&9*#+8\O '>Q%W <]YL@
MR=#ED]BXTOA<W01IX N-H0(=^CN-C@T#DGM%T!P>+D#WG]-;0%;\O]\^U89V
MC&(="U0POB7Q[>IO:!)#"?X?DN!K/#:K[*YI.A+)3> )FWW%"R67L[)Y G/)
M!*I0+P12F;IU)SH&>0'U UDEL69.32$PD9W&<HZ1"*A"PEP:&)$C!:M>%578
M9@F(9EN/RN9CEN HKR($B)OG3-.M!Y-]7ZA0BC9=;WLMN\6@*2'X#Q;,KQFF
MII]I,_G6:3OV8/U7Q^Z</8@Z2.6.<32'@#QMMF8 8)$$L:_ BH$"#* $8-XD
MN'5!!+#VH37P/%\V"6?ER3U7 )R(&1K=4)E@>/S#U__]_/'"&:IJE]$=%%40
MZ0(3,<^2>:S*@\)4? #-? !.'YCZ+/&FJO\8*5B6AJK'YRHLI+7RAGL>"%CF
MS5YI(S@-0D4M[DUZ"^VSV3>>Y)6!ER!%FN9C)T5Y%$(L'50S4:KNB2+(5;!"
MFL08,Q')&&$4>?APD$[S.-:'=2<+W_B6^Q172Y]B.0^7(.PE@IZ'FZ='=36H
MZ-&I,$J(6%@;OL)Y><0AQ#:/P:3,.;:D1%,R!&)C"F(P2_7B^6([>3:>RARW
M9ESV_)#X@TN5'\3R[\OQX&L>FQ?,*P.4V[DGB>GRN+ YS)#U(N,%'T.;+WEX
MRV&:^8;]<&29-6*5K"D>P^,Z5:R$O,R16,;[<UNL#*VJ(U#K()X ;\#7O,^A
M["#Q+\!XI"NZ+Z^FL-*T&HW:*N;P[>,CL0:81.==6G8$;!.8Z21 :Z#:AU_X
M8B[4,*OU(>4M3T2$?K)V>=3L&QH6X9I.\WAZ%(?^85CZ0YQ/08H%UR*H@9+_
MNIR)?+H#^<O'J9MT,S]3T%/R5/JY%)[(A:=\T]<HJ7(KT7]+ K54JA?VQBKJ
M"!5=FIY?<%2[H;),-DF 9VE<Y$YB6U!RT'1\_"+DBSA+H?@[X;_750UA,G56
M/ _H"OE<BDLI@&Z ?0H1J 0G7?2;^V=_W@0R& 5AD"XNB_??/SP$5-?F=.W>
M<'"&DMN4E:0?:MG#P7#+,\Z6W_MV>^@,2__IOK+ QC:J9P_[O7*C#&C3P.ZT
M36B'D0-F9*.:@:(GCC;NO^QHX_V=9/R8*>OC+0!5V3)=><T3A9^=T;X_4>^4
MTWXP88-H\9>_OQF\.?;NFRTWC1@S-*^;R>P^<M^5#_VS=IT_H>O\MU'"?OC'
MFO^\?6![-+"&#>SG/&#^P_G'? 6APNT]S[E7QL3!:ZQUJJ'AOTH"'I(%:AQ1
M?<'8#1F@QHTK&:!Z&B":FS;>^A/2-U@0ERR(818$5VW(9-1%D8BUB+5,&IH*
M6>N05TX1:Q%KU578Q%K&LM9;]F'*HTF%MW@2<Q%S&2ML8BYCF>N,F*MFRD2K
M6X=:W2)V,HV=*(9%S$0^%;%6[5B+8EBU421B+6(MDX:&8EC$7,1<Q@F;F,M8
MYJ(85HV4B1+DJF8R,AM5F(UVZPAVPT3)5V45SJ]F(.(T/Y0DSB2>XFDQ<><)
M8&<\!6$N$FPRGPCF\Y37[ *?!FK,$[9A\$S;X(&M'7M'L W'NQ[E>'?2X#DL
M>*#'O8/]7JX7KQX%NMAJSX(^]>N =KC0\  @/O5+KYQ6Q^JU=[CVJADXKP%/
M$"$3(1,AGPPA#WI6UR$^-I<FB(^)CXF/3X:/G8'EN*U3A7D-:(+XF/BX84 ]
M=<YU6_;P5(%\C(NX">1$Q[5',;G'1E!UKVOU![U3Q7D->(+\8R)D(N33(>1N
MUW+:%+ PER>(D(F0B9!/AI"=EM7KDH-L+DT0'Q,?-PRHI\ZY'7N'[=[-P'%5
M\>,]9(H?;1=1$S/%?Q%2\,2;JFLA?7$CPG@^@Y_JM87BI SGLP5M-.'40'YD
M.%\P6>GV^P3E!D"9.)> 6@N@$N=:KCL@*#< RL2Y!-1: /74.;?=V2'!D'!L
M'(Z)< FHM0#JR1.NO<.>QF;@V,R,[@9CG-B8V+@>2*V,C5VKTZ8P;Q.@3!XP
M ;460"7.M08'O3N%H$R<2YQ+0"7.70[%>7N7K8G- /(1P@XU.Y^7V+AV(*Z!
M_(B-G\W&SBYIV<T \C&"P!OIV(03O(T<@^/A_EJ$81!-+#81D4AXJ%*TN0^/
M!S)->!K<T('>YAK29FP+J8'\R) ^=RBZ7:O3ZQ*4&P!EXEP":BV >O*<V[9Z
MG1W"]P1EXZ!,G$M K0503YUS'6NPR[WMA&3CD$R42T"M!5!/G7)WRM-N!H[-
MS--N,,:)C8F-ZX'4RAS@7LOJM1S"<@.P3"XP ;460"72=:WND.(.3< RD2X!
MM19 /772/7>LX?!D'5TS<[6)CTWC$Z-!7 /Y$1\?-E>[&4"N<Z[VJ[<MG/(9
MVA_@4Q!-X \&'V7@"\S.CB,C=H^0Z3S<[I 1/"V2I13L[CQE,@X#GQ4@K%HE
M:B#A+5#>+F,ROROSV^Y8[BXQJ(/K@ZZ@U:Y<(\R<,Q'QFT9+1/Q$_#4B?M=J
MMRH[FY9XGWB?>)]XGWC_^ Z_8PT'E1T/1L1/Q'\2Q%\UB&L@/UHD>7:F4'O0
MM7=8M&X&E,W,EV\PS!M)R.2)DR=N%*FC)^[V*CLVDCQQ\L2)^(GXB?B/G_+D
M6+U69=<4$?$3\1/Q$_$3\1^?^(=6KT?)-D3\1/Q-#EC60'[U"TI6MTMW2%>*
M'COTOK_#Y,M2<UKP[OYV+.2R1+GIHJL?H>.IQ?<XY2'S8IE*=<Q\/%=[&*()
M$W=S$4DAC=A>16;V<-NGUOU)UW;1H?3C;!0*8V981R"PM]4!_3DC0*:\M(S>
ML]J#RLZ=>W*TC)F!U8"5B/Z)_HG^B?Y?2O^=@=7J[[#@3O1O%"L1_1/]$_T3
M_>^R[%[=<7OUH'\SUU_(--3*-%0-XAK(C]9?GDW;?7N';<K- ')E!T2=+,H;
MR<?DJI.K7BO.[[A]J]L=&*DOQKCJ-6 E<L>)_HG^B?Y?2O_M@37L5'9(-]$_
MT3_1/]$_T7]U@?KV+D<4G1+]4Z">3$/MXYLUD%_]0IC5G2AJ5Y9;4S60*[_)
M ?[E8*#4QXT;%-IVN]T^>W2+@MJ_<"CI;.%.5?=>E-_(WK]6'[>*1S^*E5T&
M*;3#>^+>"9FR>,SF2>QG7LH2<2.B3!02-+35[  CW-L&.</&^(4CRH+( QJ5
MPF=NRQZ>J2TZ'=L]@Q]8.A7POT0(]6T41(+-H,"I9 ($Y[-K,4_%;"02UFY9
M\+[;MJ!<.1=>&MR(<&$Q+Y[->0*/IK$J3?*98'.1!+$OL37PCFNS[]-5.U@@
MH8T!B!5ZQWQH(;P*A:8)M#I+<-^0-P69"VGA.V'FXU><O77ZMLM )&$01_ +
M]"Z-DP6[35#$\7B,Y7#_MPS$L/H5OHL$"@-&[$_D17;#PTQ86&#;'BS+TU6R
M<9PP[GDBQ"U,T"M?P*AY@;J2A<%_Q1]9,)]!V5!BJ)Z "A@,2S;F1>OA4Q &
M:0"C!C^.!//"&,6/(G[KV/U2'YB$04IXY.D!B$&"2=%[$(TJ3H]1D/CLCXPG
MX%?D8FTS+J$7(+DL5 ,?9\D].7(<)M42BP$2O2D.%[3>@]9 Y?_*8 "P)!L&
M6K O<2I8QV*&<\!?_]+NO/]EK9_?0AZIKZMI^V,MA3&!@9,P*/,X216V9G&"
MFC#&.@I,X0 _[(_-OCXQGKEF"/4RX@M_AOH>0Z+%_$!BRX(H*T E.6@#O..!
M'\4!#@5Q7/_/?^!YQ*- 7=%;^1)^"X4#^@(>ZFU^J/EQ!#V5@&(O0PXH(19@
MU;I Y6<?OO[OYX\7SI#!D/AB%G@Y/;!S?$X-V_*1;^J7_^\=*LY,B+0@#2P5
MWL5J\SHXJDD8BFB"?\EL/@<LPU?0#Q'=!$D<*2W-.0[, -!"LK#9KZ!AHBAK
MRG%PH-/"M]@XB (YA5Y,8N0N_'VMTZA"H,>:/YBX\X1 BL3B07*_ 27"7PD2
M1")F2BQ:^S/4_9$8X\A#7[QI+J(@P?V1@;[NB?E0#=2 C4-" P0Q/[Z-<EJ%
M9S>Q6$&L#ZDPAP=V3XKD!EJ@7I Y#<SX IL&U!8C_V"!(*EQ!KA9LC>P[Q@Q
M<L,G I^PV><(^-4/L+T6M@K;BAP4K;@]IW/<#(HP#[E^>,7W4,T]*$&;1!CB
MO^-$:6") %5AXTR4MY=Z/$D"8$$H\'>0"8!:-^D>8;[,J#W/C%V%,K84S\:>
MEP&>O46I86NV(M_Z6K*^KV@=R.8Y#;0*B4'E7!56,D58VSH[K&S92.#?\Y!K
MPP E(&@"3[4TSB;3.$M5#:H4;3$ >:7N20U=:&(*HPKC#""4,#JC!6BJ+PK+
M'Q7BDC)&24%UMT$Z96$,KR\]EA(DUE\6LWD8+X2X*(RO+BV*U\PQBN<)WCSD
M"-A&V1_REA^7S3^36$JF6ZM8S.T6SG&WAY_6@+(%'X5:N.O>L?IZ<K^B3M=N
MY14-[.ZRHN?@\)%ZM!E0ABS-_<JU6@^+>>L9#GU) ;G25W2'1V![MCNY2$8!
MZ'TPUO*$8@6?A=@#1<3)A$=@$U7'B]^C"92G.ZWL&W")&(^UN"(A9>$MYR<5
M@.VX9]PT'VGQY=16]K3UST71Z$=I?LT]*&S*31QF,Y'[4<I9B2:*PPHO:Q;<
MH4>AC"@*]A:>DJ FP3CP.' R\)[J)!K,)2^NL^84=$(D%_DH [9E-E.V/*]C
M:4%1$&4>7?I;-S#7P4JT/P3>$50"-DY9+S"R:J)0-N_P[KH-T00\3N+9_>?N
M6\B\*2!CY&T..AZD"^O^6YML:"[#]0?O^PJJ">MN1_/)V'%KQL;/G^7!A$CP
M!%Q5[5D!S<7:5[E_IHBA[2?;^[@J/#JVYW_]RYW;<KSWO_R5S^;O/^H__??O
MEJ/.N)I%+7V]41 #V7G Z<J#S7FOB'84DV0@,QE'D0@M/5,L_&$=;TF*YA25
MV.SCBC>1Z^ #Q_\3:OH'UB]#BQ=/$CZ#R>^4)Z4J5,'CX*[P3G%2!U,YY:2F
M"?=^9V@S<@.T[!:&G<(P]J!?4,"B7 #ZT'EEF@G5S NGDQ9,8,&$8LGPP$V
MS#H-)$P%<5DD?QMDD"5HPG4Q.$]M/C$V1E.T'JQPLII.OFW9[64D\<'<\CF.
M9.$1J+(ZR[(P3/5<A_2Y$^>?\C)+C<L?LO+XS-*RUP.;!U\^VIQZ4)D@W.X]
M24R7A['-^43H]=H+/H8V7_+PEB_D^S?LAR/+K!$+CDVAKD=B-26FRL/ FR8/
M4\%]+\[ )0"[[NDHMT"#/7YTINBNA8VVSRKT9!$^JN4E^#Z"+A63L[)3HD+V
MX !$14QK/29U?YZ#]%D*N^D97L'CMW'RNYHNBP27 (2_HL85W:XQX_ZJ>MB1
M>\S[2'CM67.TYTK3)HUYKK'7,_%E('_.%WI58<;]4I!7N9$@Z%1@I**0. RP
MR/5,Q6_54WP"QE=!6D4/OO";8!*S;\6[_YR-_GOE@>M?EPZXS:ZSDH>L0R+@
M-JP64-7J9MMVBB_N+Q2/UUR G:-0:VY/OJ+:V5;GFE,"",[#5CI"A-JAELZ"
M4(#O'(F5J*$^+0>"[>.P_54H6"#J &0//-9B#!(QXRB5M<@>3&K\3*T7+ D&
MXWTP1\,%TVT<8D3W*:[SHKC(-5AH(":+342$X5,=V_-GN/B:8C#V1E"(ISX#
M_YIA7MJ:ZW\JTKC:$.Y92W/8N'0H=4V*?%1V2P*_AJL0N$Y5P#?SM7F_3#'X
MEEY(5BNB8V"K="WO*!03'EJ8$X3NJ.K2G&,G+1WXF<8A<EJ^7HK.$KA9:;$@
M$>-*?,JC28!A>6BZ2,N1IWL"&6>1IU<C&L]PC<%Y#MU5L"T/J8P6Z)D,5IX)
MF,&VW3E[=:C&M5MKA3JV>V:52]WO@C;[$:#ZJ.-6<JJTGMZ;*MP3S[U%^M7R
M&U;W4RCN?@QBN5B&;U5T<R1$5!2OLM;R-+<L3/4ZWJJ0U5R1>Z#J,EAFUN![
M5_,D"%<BA=%IES/QP/&[2&'4[X=-U?3TT=7,QY8OM>^INY%GRN#_17$N=;5,
M5]3TW,#9Q8/I89&!@S.%>Z(' AQC6#R.@ W'0CR0_DK>[&HEKB<C>BSD,F4+
MP1.;?;N7ZI'F<EA/"GEN"L=+M6(;@!]*$$'[4("EMCX)UY*P2H!3.6)KT%"C
M_&"B_2 +)A]SL!48X\ </+!<@1HMG.D%.*U+<Y2K1#X$X;TD&;6NO%VTS;<E
M#?:6/\3*Y\ Y.R[O!WX./;+(+Q89&))(P*.8C8LK?FI^CU[E,C-CS(,DS^[,
MXXS>8V7%(^@XSY-M5J9)F0QX6!G)."K^?+R8J*A&7;ZEE';$0Y4/+J=".8NR
M:$P>_\0,TIS!;/:+F('V9SKA]$6M!LK%4(<JK0BDYHN+*L-R@;2S)HSUMW6B
M_8I[B[Z6A%B./6&6)GKT_GIG90K_Z%B+)D$8FBD\A]XP"#:>"9M]4L$%E5NK
MC?[]C)H\$32(YAG\JM)M,065AUZ&/*C#J)C]C%R;J#Q;790>M&51>4]*. %/
M'CV AXM7STC1P@Z=OVUW[/:[M7C5.7APJZ_N1ZST$VWGX5N.8_?>[;1(]UC6
MF&%4C'@*QHM7$LD(YF.'X>*O:LKV6:&2G7_*9ZCO+,S,)CY^_'8@U!SE[HX$
M>#!%I@+PCT@Y..0)3+ 3OYC!ZWEQ,?U7LKVL; WV$41N6U+<J@,O65+4HML
M)YZE<7%  ;8%)(BMQ\<O0KX __%2)9&\UU4-6W;KK'@>P!#RN1274N!<)!6%
M%-0N8EWTF_N7;MW #&&$:TV+R^+]]P]OW]*U.5V[-QR<H>0V[?W5#[7LX6"X
MY1EGR^]]NSUTAJ7_=%]98&,;U;.'_5ZY40:T:6!WVB:TP\@!,[)1S4#1$W<*
M]N?/NU-P7]=K/N>X@C[>SUM5AHRN?"_VK 97[.Y/U#N='7,P88-H\9>_O^F]
M.;S@7W03N#%#\[J)QNXC]UU-*W_6<[A/.(?[VRAA/_QC;2)GY+7NRQ.P3!S.
MQM):/;6+B,_8H:F*^#[G2R\_G'_,5S%V.&:.:*ZA-%=#Q_@*3S0@HFH<47W!
M(#LY:,1<358N<M",'1IRT(CF7J)7%-XT@-<HO%F%$7')B!AF1# #A:Q&712)
M6(M8RZ2AJ9"U=K@>G%B+6*OQPB;6,I:UWK(/*I69F*LNRD3,1<QETM!4Q5QG
MQ%PU4R8*'1YJ 9C8R31VHA@6,1/Y5,1:M6,MBF'51I&(M8BU3!H:BF$1<Q%S
M&2=L8BYCF8MB6#52)LJ1,X#,R')483G:K2.8#A,E7Y5A.+]2Y_SE1SW&F>01
M7J^*5\C.];7 <Y%@D_E$X'&5O,(T:Q/'S2SS,'BF>?# W(Z]5XP(2/)9XA\<
MT#*\]MBHP<Y;#VZ$3/,KG/'$K9=KQ*OE_U C5O \VJ"H$YE>J!"["GU7:_UL
M24?Q*]V@XT'](*A^2R@V@%MZ5J^W0V"\&2BO 4O4#\G$Q\3']4=Q57SL6DZ_
M?ZHHKP%+U _)Q,?$Q_5'<55\W+$Z@^ZIHKP&+%$_)!,?$U+K@=3*?.!6SVZ=
M*I*/X%F<$<J)CVN/8O*/3>!J9V Y#@60S:6)^D&9")D(N?XHKBZ /*0%/8-9
MHGY()CXF/JX_BBMSD+N6TSW9:$8-:*)^4"9")J36 ZE5D6[7<>R37;6K*H*\
MAS3Q5R?NGW::..B\D&EQ8[ 1^R9,82+#;.:S)6TTT]1 ?O5#:E7T<>[VAJ<*
MY".83#.VL9D"<J)CHN-Z(+4R.FZ[1,=$QT3'M45Q#>17/Z16MD]RAQ ^P9A@
M3(1+2*TU4BOS?YV!?<@36XU&\C%"^.0!$R$3(=</J941\L YY+G_1@.9 A)$
MQ_5'<0WD5S^D5D?'0W*/B8Z)CFN+XAK(KWY(K8J.^R>[6$<P)L(EI)XL4JOS
M?^V3I=S*PL-T$GBUH+^:Q2"+/WD:Q!&+Q\P7HY0%4F8\\@3S8IE*VG]BKAEM
MQOZ2&LBO?DBMS(QVNCN8T68 V<PP4H-!3G1,=%P/I%9(Q[1OE>B8Z+BV**Z!
M_.J'U.KH^%1A3&1,9%Q_%-= ?O5#:E5DW-HEX-\,'-.AX,3&]4=Q#>17/Z16
MMS_':O=W2 AO!I3)/29"KC^*:R"_^B&U2D+>99=Z,Z!,A$R$7'\4UT!^]4-J
M=81,[C&Q,;%Q;5%< _G5#ZF5W<- 5TK2@> FR/]XD/^:3D7"@LB+9X*=YZ>"
M2]K9:K#AW,_^E!$\+9*E$.SN/&4R#@.?%2"L6B5J(.$M6-XN8P/17A43#88[
M9#4>7!=T!:TV:0,QNSF2)F8G9J\/LY_WK.[0,5 =C"%W,V-A1/S&T1(1/Q%_
M?8B_;W4&/0.UP1C>K[\^&(CV1G([(;6!2*UNU=EIVY41<]50IH/3B9')VS9#
MPN1M[W'UVNJV*KN!B+QMXG;B=L(R<?N!//:6U1Y4=IAE'=B=8NC$_,3\1DB8
MF'^/7KUC#8CXFZT0!L*]D>1.2&T@4BL,HG?L'<[^:@:4&W"\?%EL8-=>KQSE
M,<G%B:)3A5<_1L?3C.]QRD,6;]Y98+%(I+3;R5Q3NY_]3.N.HVN[Z#GZ<38*
MA3$SJ2-PV-OJD/Z<$3!0&ZHBK9XU<"L[.^[)L:*)%K&_>9(F]B?V;P[[GW<M
M9S@P4EV,H7\S%UC(-)!IJ"'2R334Q30XKM5R^T:JBS&FH0:D1/1O!/T34AN(
MU,J\=K?M[+($TPPH&[J/H<$X;R0CDT-.#GFM6-_I6QUWA]UKY) ;14I$_T3_
M1/]$_R]V^H=6KT\KM54K#,T,R#20:2#38))I</N6TZKL;O1ZF(8:D!+1OQ'T
M3TAM(%*K"]4/6G2[0F6[)>!?#G9(?=RX1Z%MM]OMLT>W*3BM TIG"WNJNO>B
M_M1[XWK_6C[:*A[]*%9V&:30#N]1@7V.;H1,9_!'OFNED)VA[66/C>W!!W)E
MS(XJFD?=_MX]24R7.\/F?"*TW;C@8VCS)0]O^4*^?\-^.++,&J'ZO6T-,DSY
MGZWJ^$^8^?!R_K?@221\%D?P!3X+GSTNIVS$0QYY0MKL:Y;DO]TK!] FX?'1
M@KWMV%T&#0L#*(='/GOK=&UW^<TX3E@Z%?"_1 CU>Q1$@LV@F5/)! R'SZ[%
M/!6SD4A8NV4QM^6V+98(.1=>&MR(<&$QJ';.$W@TC55IDD,SYB()8E^R>(SO
MN,S/!/[.HV4#X0/\%U0".L 2GD+7L9'@/X'*/-)I)N%M\;!-KL6X9+<B#/'?
M9:DK&?['OK99BO5FR8*-H/^2S;/$FRI)\50U'#I<M-=FO\+?=]C+#3*&CMQP
M+$>]#<5#.=%$C9TJB,_ @TRQK#%XDG+5&13Q.,R\-.,I#@ \L2X"^P ZX[@U
M4YJ76,QBI/7NSKH:3&+$!T-9Z-++N$D]J @G  5/ N@]-(*-DWC&8N#+EMWN
M=\_8ASA2\S2,C%V+*  >_!(C R%-P>L==HYU__4O=V[+\=[#_PWU _H;__T[
MBX%LO"EP3@)-E3*#YD"+_Y5!;?BXS1YT:#>V71D&?!?EE7#DCQ ^9_.XQ*&Q
M%MBJL78EZG!,\#>8VJYF,0#TSZ6=\,4H54!#0PAC+U-);/+X"0 )CR3H"0I/
MR0I\EI"G*R=E*4D0[;K6*,WD:9H$HTS%+(I7PH"#XQ"D"^7QQ)'0)O[^V\G2
MEU.,P+>/8Z&YT'P?F<+'3^J0(]5BF<(_Z'XH;PKK3L04G@/W*W=(2-&- ^;S
M%5U?@%D<3T$Z_;A.HXHH1QOU*EX3&QCN)(@F.\UFGC-_L=;]B?OT !.+$/KF
MHXV';@/G9$DB(F_!)CR(-*6$L<2&EGEH15(P>0G2*;PF80Q$HM^X@3;'21/G
M!*,X] \U(U SM._\CIW_*"(!O[YCWY+X)I @9M*N;8)+47"C0G#S0G"[.J]+
M=_P6YN7PWW$<AO&MO*PL<O@;:%@P7KPT$+9575X2"-.TL0%Z/$OC8A4?VP*,
MAJW'QR]"OHBS%(J_$_Y[7=6P9;?.BN<!."&?2W$I!; 94$PA!;4*IXM^<__<
M*AQ<[=-<%N^_?WB E:[-Z=J]CGN&DMNT<J8?:MG#07?+,\Z6W_MVJ^<,2_]Y
M97G[:=/ '1K6IIX]['0,:,? [K2VX>(X8T2X:39NGCAZK__,H_?V=0[E<Q;T
M^WA:;55K-[KR8R:M'."(SZ+?1Q3UYJ7%JH0-HL5?_OZF]^;P@G_1L=C&#,WK
MIAZ[C]QWY0G_K!W@3^@ _VV4L!_^L>8%&WG&^3(5U,3A;"RMU5.[B/B,'9JJ
MB.]SOH#_P_E'H3]5>"T)T9QA-%=#Q_@J"7A(1-4XHOJ"$4IRT(BYFJQ<Y* 9
M.S3DH!'-O42O*+QI *]1>+,*(^*2$3',B.#R/5F-NB@2L1:QEDE#4R%KN<1:
M=5$D8BUB+9.&IBK6>LL^J+QF8JZZ*!,Q%S&724-3%7.=$7/53)DH='BH!6!B
M)]/8B6)8Q$SD4Q%KU8ZU*(95&T4BUB+6,FEH*(9%S$7,99RPB;F,92Z*8=5(
MF2A'S@ R(\M1A>5HMXY@.DR4?%6&X?Q*G>.:'^L:9Y)'OK28N/,$$#2>B#,7
M"389#ZSU><HK3+,V<=S,,@^#9YJ'5]^] 9)\EOB/=]_#\6[9>/H4*;H(Y?G:
M8>R5,Z=^STF%M[$9B.+*KO/I6=UV93>MG0#,Z7I-(NOZHYC(V@2R[ENMW@Y+
MFLU >0U8HGY()CXF/JX_BBMSGIVVU1WV">?D/1-;UQ7%-9!?_9!:'2,/79O"
M&8<CY,VW$Y\LSHF1ZPEC\I]-8.NN-7 [IXKR&K!$_9!,?$Q\7'\45\7'[L :
M$B$;3!/U@S(1,A%R_5%<63C#;5M.JT4XIP SL75=45P#^=4/J94Q<G]H#T\5
MR97%E_>0CIYO$"B+35V&N[_\]%R8Z@9:573U0W0\O?@T'@LO#6YTSCK>FVO$
M'@Y3Z,HPP_IL21M-1S607_V06IEA[?;L0Q[78C22#5VX;3#,B9")D.N!U*H(
MV>GL,M%I!I"/P<<$\LKI^*B'R9#4"=\DZ89*FIB$\$V2)DF;(&FC/>L:R*]^
M2*UJBCBP=TA-: :.:89(;%Q_%-= ?O5#:F4!N[Z]0^YN,X!,='P2=$S3['H:
M09(T2=HL21.3$+X;*NDB61+^Y:-0J(\;DQ3;=KO=/GLT35'E,);$XKC;FGK<
M5$75OEU$]U.<L'0JX'^)$(Q'/HN"2+ 9/#"53( D?'8MYJF8C43"VBV+X05X
M%KL5+!$>(!)^AVX$JS-Z\R-Z63QF;\][=O<=@P:%01RITM>?79[BJY[NVH/B
M60M*EW.=11DN;/8=FB@>I%6R6RZ92I8Z>\=4\0.[=:9.T=ZE3^4J+?5>(-F(
M2W@\F\>1*E/(-)A!U7[1C:*RA> )EAU$$_91>'G9CBY;%89/P2OS6 9IWN6\
MC"!B?@"]2V!,V&]9$D@_\/ 9J7M>_.BI1Q_* 5HITELA=!/G(@EB7RKAS!-H
M;0* 8'X&S\<LC&^A77F](P&M5\5 $:J_D0=4@QW.1U&R<1+/V"B3($$I58WP
MB ^_6"P"@?([U"N&@(*>8_OAHPQ\ >U:CCD#B6?09'P2:P0MP!//U0T9T"(H
M%Y[T@,0X="^,H\D%L-4,6@/_H,1X!.T7H]1B<PY,QT/H3SP>2Y&RT2+O4E[N
M!=0,HL&NI%"\JC+OK0)"')7:(NZ$ERE)8BTBDJK--ON:)9O0MANNU#CH-J;0
M8U7"?^QK&U2?IUD:)PM=.L#!=<X>CMAFV6_M+J@H\-@89%762B5IF<;>[RR>
MJP$"&21>(,42HC<(<0 QM$<_F$75C+9=(O1]\7;OE&G;?8JVUZFX;SMKM/W6
M'=C#'<@9$Z?.5 D8D=F1FMT#4K/["FK>)TVX%=&$:M]>F8+4]G&U_1JQJVR2
MR90YO0+::J!!<(B*5!ES$7$/_\1?/D?C4'/K+YI5X=.5I[PKA9KSO_ZEW7G_
MR%/JMW>@]=/ FX+:  1AM*!8Q!B,'  DF,U#,1-X(PEG3A=T-00:CKB"-'0C
MF&4S!0LH<1+&(QXR[O\&/8#VC8.(1QZ88X5154J!*FC>DN%A;%"[DGFLK034
M"E6=H4U -.6%1V#,-8H2,<\2,!<R=TJD@/D-U^"$XJ$6:)M$S -GS6+0"2\4
M,+B VV2RR $-8!X)U925AHX$@"1"Q$*ST#3;[%?X_8:'&2_DO:1!B7UX:@2T
M.U'BS2E'XX<,A%=_Y_5BUV+@";23>/L67Q?<BG$2Y+@L3%6]\3RWJ"MM,@*_
M[ "Z7?%4ZM[-/CN+YDL<7?SSZNH;^VDYN#^#*YW!J#XFM.=*:.<Y^%ZN/MH?
M>MS^/4E,EQL8YWPB=+#C@H^AS9<\O.4+^?X-^^'(,MOA3K2=!?(@;D'V<EU
MO^:$[ N<?FC]6IJ?PLO#">J*,-^O'D"3HA]ZKV<FQ0^??OS\_>,5 X=+9O/<
M_H&^SG)]1=."55FK;Q(QX8ER()',\]K@+_@PQMZ"65)^,-BS%;DOWP9+%V:^
M4.8$9#>3,+\!VQBJ>3;X?-@ZY0@D:D)N@2FYP1[#]!8G]1X/O2S,/5O&/?3?
ML48P<^E4M=1F5ZLBQ=T\Y%%Y0H8N/S0I#'CAW0KN35<B?=!DE "Z@+-8ILHQ
MYHF:^#WR-$^6XY3WR#"S=0B[U2 = R7)\0FSJM7P!I'"ML(,.%,\ W3?HAL5
M!N)&H1F^6(*\4%1P@3"H!##-U(1%PR>0&GBH/JL:"I>G"%\5H2N$[5HI,,\!
MW0C1H9J"OD!_P& HAS,1-X&XE0JN#PM6!2W56@?'"H4MF@-.<:PT>\DARRE<
MT1Y0.^5# U_ _X%O"BZM5+ 'T64)S+8.,>NIF6>D'\6J+@.@T\#;[BM=%8S\
MN<3E7Y?C0%J[781;S"'&27(%\#%8FO+?]01HX\,<+1W,TYXP-4JEM$'#@KCW
M1Q;D<Q@=04[%)(\&>F ]I(K=I E,G+($7\B_?#2$..9!PG!*)O*NY9/3:"UX
M 5/9) W^S+DICG]7T[<DSB;38KH%4,#PT-K$:SE/5;,L9*9$3.$YG!UJD>AH
MUC@.P8@I0<F-]O,Q83\B,S"GS_5?=HTRXX,8$;@\@-+4UYE6JWZ;),"S-"[N
MR,:VP%ACT_'QBY OXBR%XN^$_UY7-6S9K;/B>5#ZD,^EN)0"':-4%")0:YZZ
MZ#?WCVC!(,$(()0N+HOW-YS5HFOKMNV^.SQ#R6U:,M8/.7:[U=[VS);?![;;
MZ[RR#&J'">W8WZE A[^DME\=N_1/*I=C7X+>)9?C0))>YBKUCI"KE/-](1*\
M6YHI9X(5'M\&-!XMP^80%YOOFH'S73DK/VL?Y1/Z*'\;)>R'?ZPY*M6ISQ,#
MJ:MHM0T<2LI+.X1/N@N9[<\I)3:K 9M]P0D7D5F]R8P\8O*(3\HC/D;V/MF0
M9R]VM]PVV0C#;<31J>JD!4U,92I3'?*P66*J6C+5R6X9(ZHRFJK(J2*J(J>*
MF,I\IB*GRG0%>B)$V*<0(84(&Q<B=#K'/>'CV<2R+Z$?P@3L.BCG5S,0;ZJR
M M-IG$D>^=*,FT<,&9>C:\,3A*^6>)_#^*^^2/"YC'_0+,S*$I=5#NSFU->=
MKQ(L2_"5%]D]RW24$TF?O-VND4D+K]>,5Q^?>$35.(P6U.Y*Z<,BN3(VZEB#
MUN!DD5X'KJ@AFHF7B9>;@>3*>+GK6KU>]V2A7@>RJ"&<B9B)F)N!Y.J(N6MU
M>CNLP38$ZG4@BQK"F8B9B+D92*Z,F)U^UQJTB9D/PA;[6#<XVDIQ,]<-[AUX
MH@_QP&.J-BXE7.Z\S$9K"95L@#3WZHE&RIUD3;)NHJR)3PCC)&N2-?%)O>5.
MLB99-U'6Q">$\0;+>H_YM7N,P]P/G!T_Y&)4).UJVY&]>\G#=8\<.W-/+G9&
M$?WJ)5A#JU 9[[0MI],G-!.:B7L)K:>)UNJR RRWZQ":"<W$O836TT1KA7O,
MAB[YO81FXEY"ZXFBM3+N[5M.9X=SF C-1\V)I5C_H?#_R\.[][;?S(K=O^C8
MO<&P_)\NCLN+6]ZSMYWB4ER!?IF(4%T[__B!.L[NI^?0TH01;L*SEUM/F%A/
M=\&ZNIOI.U;+.>1YC03G$X0SD2^AM3YHK8Q\__J7.[?E= C0!&BB7T+KB:*5
M?%^"<X/@3.1+:*T/6LGW;22@:3M"#98H/L"G()K 'PR^E(&?G^%!NQ#J;7%I
M#94R @RTN.?MCN4.3S<GX!AGPNVP3-MDK!,S$S/7!ZW5,;-KM5O#DX4S$3,1
M<S.07 <)UA"M%;K,CN7V>B>+9V)F8N9F(+D.$JPA6JMC9L>Q>JW.R>*Y,F:F
MS0\U6%GX'*4\F@2C4# ^BT%2?^ZXL$!["$RRQ?M9^1S!TR)92L'NSE,FXS#P
M68'4RMFM#C+> O#M4B9[OK9=L;/+TL3!-4)7T&J33C0T 88XGO!,''\4CN]9
MW5V.P2..KY-.F(AXXGC",W'\<?94N%:[W3)0)8CDB>3-E#61?.5X)I)_V9FJ
M0ZM?W<8Y(OD][N[8WY++::VPW+N45?B/7,>ZE[T<KUP<>_&2RW%6S&IAQ?>S
M7+Q.6:[M(F?Y<88+=,;8\8;?F?Z<,2 K7QJKKN7T*CN]]\G1.A$S?[II160%
MR J0%3##"@PLIUM9GAV9 3(#9 ;(#) 9J#H_JVMUJML(0V: S "9 3(#9 8J
M7_EQK-:@;:3.G(@=*!9_X%\._58?-T;QVW:[W3Y[=AS?<;<U]:!+,Z,X]%^"
M4/TH5G49I- *;_M2S56Q5/-%I.RS7J[!:\"7WW_B211$$\F^B81=3WDB2@.P
M+SGW*A7S(5? (A!KL!+K\GM1B'4.8I4H5A9(-A-<9@G\/%JPE/^.M[24"Y L
M$?,XT2MKC'L>J#Z//,%N@W3*=,50B;CSPLS'E_FVR]TM*/'!G3 6'KVV\10V
M-N9!PFYXF(F\*S-X!EX(-F^NLM;^8O&8^6($_9$R4^U6U:F6I5,!/;YC8CP6
M'GP'C\)7$J22BIFTV7?X?1R'87RK^@7B2@0TS0O"0"\JXAOWA#W.PG#!_"#,
M'I/X(T),8Q8]>R2WUC*.$]V]:2+TN_"$8#.0\50R =KALVLQAWZ.X)UVRV)N
MRVVK!^&#>WD ?=LKLQ_-%<7>*W[?) &>I7%A"[$M, C8='S\(N2+.$NA^#L!
MAE55-6S9K;/B>>"+D,^EN)1BS@'IHA"!<C1TT6_N)Q?<@&*- '[IXK)X?T.2
M@:ZMV[;[[O ,);?)-= /.7:[U=[VS);?![;;Z[RR#&J'">UX(I]E\+(MQ8=/
M9^E7QR[;[A,S-;MNMQG4O@2]2TCA0)(&N>(O?W_C=-X8EM18P''KL SV-"PK
M).QOTC#8<=B^*V_E9^VD?'KHI!B9F+J<[IHWBENT:]=AVBDAD@P(&9#F&9 >
MV0^#[ ?.8<E&&&XCCDY5)RUH8BI3F>J0^W:(J<B;)6^6O-D7V@CW"#:">(4\
M(!)T$P5]XC12C2/YDUH)_JA7@DD'JM8!$C2137.%3H(F03=+T"=.(^2S&#4<
M%.&B"!=%N(CF:\\K1.!-%?0+>&1?HMZ%1\A=;(Z[^*FTO<$('3!D-(ALB&P(
MWC6&-PF:>(1XA)R64QH-"G%1B*MZEJ<0%R7Z'L<.7,U _BFE^AIN)4PF*W))
MB:R.0U;JJ)W_(K(BLB*R(K(RG*S(LR*R(K(BLJH%69%G50NRJE.PL!GGZ]7"
M3C3R6.WC'H)E'KE48PC.M=LJ\1S0=!IGDD>^M/#X5 &4O#K T^<I?V>$GA@R
M7";9 KK<\SA'&ZO#<%=GX-(=GK4P+*_7AB?/GC=,'0Z#_ KO8C#11:KNGH6!
MY?1W.*FG(5"O UG4$,Y$S$3,S4!R9<3<LMM$RR9310W!3+1,M-P,)%=&RYV6
MU6EU3Q;J=2"+&L*9B)F(N1E(KM!?[CLG"_2#4L4^U@F:L6ALRA6(ZGY =:'>
M<NG@<N>E-%H[J&11^LA[%8TQ$*:Y.B1KDG6-94U\0A@G69.LB4_J+7>2-<FZ
MB;(F/B&,-UC6>\RAW6,<YGZP[/@A%Z.B9U?>'UD@@S2((\8CGP7PPR3AZF\O
MEJFDO%O3]8RB^(9(L(96H3+>:5M.IT]H)C03]Q):3Q.M%:8#M'H$9@(S42^A
M]3316MV6,JOKT-8%0C-Q+Z'U1-%:I=O;)C";&NG??\8E1?K7AN\7(=,D\](L
M":+)>FS_\?9A]R\Z=F\P+/^GB^/RXI;W[&VGG\]CO1)QF8B0I\&->/PD'6?W
M\W%H8<((+^'9BZTG3*RGNUQ=&4VZ':NURQ2-X$QP)O(EM#8!K15.T3I$O01F
MHEY"ZXFBM3+J_>M?[MR6TR% $Z")?@FM)XI6HM]& IJV(M1@@>(#? JB"?S!
MX$L9^$+O0Z ="/6VN+2"2ND !EK<\W;'<H>GFXQUC /@=EBD;3+6B9F)F>N#
MUNJ8N67W6B>+9N)EXN5F(+D.$JPA6JOC9==JMX8G"V<B9B+F9B"Y#A*L(5JK
M=)A;G9-%<V6\3-L>:K"J\#E*>30)1J%@?!:#I/[<<5%APTBY1UY4<&E1@58]
M:1G?8$O<MSJ[+"D0F@G-Q+V$UB:@M<+- \X.^[L)S 1FHEY":Q/06AGU]JSN
M+J=Y$IH)S<2]A-8FH+5*MW>'RST)S+1KH!'Q_:M24)_%8^:+4<H"*3,>>8*N
M,&B"X6W(.F4=)$B&]_F#T>F>;BX489F8E]!ZXFBM\B37':8\!&8",U$OH;4)
M:*W0Z>T2E@G+Q+R$UM-$*SF]C0,SY?'7(,[_G=\Q,1X++\4H?Q1'%_^\NOK&
MO"FT7^P0XM__@%&(O^JU]1$\+9*E%.SN/&4R#@.?%8!M-I$=9_5]NY3);I<W
MYW6M0;NRY*@G!DM7T&I7KQ2&[JQN<KH*&0 R &0 CF, 6K:SPW%&Q/_$_\3_
MQ/_$_W7G?]=R.Y6EZ)(!( - !H , !F NAW/1/Q?CR.<7KW:>7^EQX A.*)V
M?"F6<KC_6R93X;-(I"R(O'@F:.=&O8WZ?E:?URG,M5WD,#_.\$PO8\SZ,2CL
M;76I&,\9 S+ZI;%RVI;3W>$\DB.HC#EVOP[41',[,@-D!L@,[)JUYY(1("-
M1H", !F!4S4"G8[5[E6V69S, )D!,@-D!L@,5#X7Z.^0!TQ&8-_[?.!?#OU6
M'ZOM[M'(>:VKY<6*[MFSERIZVQI3DP6G_V+?1,+DE">"I7'*0\EF?,&B.&7<
M]YF?X==,Z6 03>S'I'APP*P(TPBQN8-[DI@N5TSG?"(T-UWP,;3YDH>W?"'?
MOV$_G)J2*6;9I&@\2^."A;$M "UL.CY^$?)%G*50_)T 2E=5#5MVZZQX'L8\
MY',I+J68\X2GHA"!LF^ZZ#?WE[%O AF,@C!(%Y?%^QN6LW5MW;;==X=G*+E-
M1DD_Y-CM5GO;,UM^']ANK_/*,J@=)K3CB<R)P<OVS!X^<:)?';OT:YKBM9OC
MOB]![S*3/9"D0:[XR]_?.)TWAF76%7#<.BP#DSR241SZ]]JV4]I0$ GV,_PY
ME>P3=-EGUV*>BMD(?+MVRS(R.7(YSS)O$+<HUZZCM-.A"V0_R'XTSW[TR'P8
M9#[<UB[K\F0CCFHCCDY5)RUH8BI3F>J0-XH24Y$W2]XL>;,OM!'N$6P$\0IY
M0"3H)@KZQ&FD&D?RIRP,%^QC$&:I\$D'JM8!$C2137.%3H(F03=+T"=.(^2S
M&#4<%.&B"!=%N(CF:\\K1.!-%?0+>&1?HMZ%1\A=;(Z[^(DG41!-))N+Q @=
M,&0TB&R(; C>-88W"9IXA'B$G)93&@T*<5&(JWJ6IQ 7)?H>QPY<S4#^*:7Z
M&FXE3"8K<DF)K(Y#5M=X?,I_$5D161%9$5D93E;D61%9$5D16=6"K,BSJ@59
MU2E8V(SC]6IA)QIYF/-QS\ RCURJ,03GVFV5+(A8.HTSR2-?6DS<>0(H>;X\
MP]3G*3?C<EM#ALLD6T"W2![G=%IU@R1='%DSP_)Z;7CRT'/#U.$PR*_P!@ 3
M7:3*&*C7MUJ][LE"O0YD44,X$S$3,3<#R=7=Q&L[@Y,%>AVHHH9@)EHF6FX&
MDBN\(+UON>W6R6*]#FQ10SP3,Q,S-P/)U=WT9;<KNZRV<J ?E"KVL5#0C%7C
MRL#])8XNU&(!]W_+9#H3N,*6QJ6U@\N=U])H\:"25>DC;U8TQD"8YNJ0K$G6
M-98U\0EAG&1-LB8^J;?<2=8DZR;*FOB$,-Y@6>\QB7:/<9C[P;+CAUR,BIY=
M>7]D@0S2((X8CWP6P ^3A*N_O5BFDA)O3=<SBN(;(L$:6H7*>*=C#=T^H9G0
M3-Q+:#U-M%;&O2V[1>D !&:B7D+KB:*U,NKM6YU6F]!,:";N);2>)EHK='L=
MHEYC(_W[S[BD2/_:\/TB9)ID7IHE0319C^T_WC[L_D7'[@V&Y?]T<5Q>W/*>
MO>WX\WFL5R(N$Q'R-+@1CQ^EX^Q^0 XM3!CA)3Q[L?6$B?5TEZNKVRO3L5J.
M2W F.!/Y$EI/$ZT53M$Z1+T$9J)>0NN)HK4RZOWK7^[<EM,A0!.@B7X)K2>*
M5J+?1@*:MB+48('B WP*H@G\P>!+&?A"[T.@'0CUMKBT@DKI  9:W/.V8[F]
MWLGB^1@'P.VP2-MDK!,S$S/7!ZW5,7/+[I[NO0O$R\3+S4!R'2180[16Q\N.
M8_5:G9/%,S$S,7,SD%P'"=80K55ZS.[I7KQ0&2_3OH<:+"M\CE(>38)1*!B?
MQ2"I/W=<5:#M R998EKVI'5\ RVQZUKM7>Y (C@3G(E\":U-0&N%VP=VN>>(
MP$Q@)NHEM#8!K=5=_CFT^K1MEN!,Y$MH/56T5NGW[K J2V"FC0.-B/!?E<+Z
M+!XS7XQ2%DB9\<@3M3_IR-T])8"6*HSP&AJRS%H'"9+7\((IF]7NTX&(A&;B
M7D+KB:*URBL8=@B6$9@)S$2]A-8FH+5*M[=WNKFRA&;B7D+KB:.5W-[&@9FV
M(M1@H>([OV-B/!9>BLL441Q=_//JZAOSIM!^L<--R[0CP22;NY_UU!$\+9*E
M%.SN/&4R#@.?%8!M-I$=)WU@NY3);I<7(0=6?[C#6L'!54)7T&I7KQ2&;@YO
M<KX-&0 R &0 CF, 6K:SPY%,Q/_$_\3_Q/_$_W7G_X[5:U6VK9D, !D ,@!D
M ,@ 5#D!: T,U CB_WWN4=G?2H\!0W!$[?A2+.5P_[=,IL)GD4A9$'GQ3-#N
MC7H;]?VL/J]3F&N[R&%^G.&Q9,:8]6-0V-OJ4C&>,P9D]$MCU1]:O<X.5O\(
M*F..W:\#-='<CLP F0$R SMF3-N=RA*FR0B0$2 C0$: C$#51J SM+HMQTB=
M(3M =L!,69,=(#O0+#O@VCTR @9L](%_.?1;?=P8PF_;[7;[[-E!?,?=UM2#
MKL6,XM!_"3SUHUC599!"*[S'3P<KEF0^_?CY^\>KDDSW);I>I9+;XSEJZY)B
M@60SP666P%>C!4OY[T$T*:UL,2Y9(N9Q@N\$$>.>!PJJ#EV[#=(IPQ4QBXD[
M+\Q\?#.(;H1,9U!97H %_P*=PI?PU%Q$$K[AVP]SLXKZ4W['YDE\$TAXV()'
M04!>H%_ED;]6%I3L_9$%^M@U]2O6/=%7S!?E8E.2S$NS!-NKOE2/HHPV74W/
MQCQ(V T/,Y$O_6'O)!O%\>\@DW0*)#B9LCA+\#T?>Z@*4XO7',4F4_A'OP2=
MA5Y!%Z;P7' C\E[:[/M4L'$<AO&MDB(T"1H*I7A!&"SE5!J61X:"I?%J?3(?
MXG&<0"L%ME0(U=4HB 2;07^GD@EHLL^NQ1R:.!():[<LYK;<MGH0/KB7CVE3
M);Q[-"\1NZK8=Q-Y\"R-"TN%;8$QPZ;CXQ<A7\19"L7?"3![JJIARVZ=%<^#
MZH=\+L6E%',.$!.%")0/H(M^<W^M'^$_ BBDB\OB_0UK_KJVKFL/!_TSE-PF
MPZT?<FQWZ&Y[9LOO [LW'+RRC/VTH^MT2P<Z4IL>:Y/C.#NWZ8D4E,'+-A\?
M/@.E7QT#;3L5U-1<N=TF0/L2]"X1@0-)&N2*O_S]3>^-81F*!1JWCLI@3Z.R
M L+^O/[!KOOJE??RLW9:/J'3\K=1PG[XQYKG8F2JZ7+2:MY0;M&P7<?*("Y[
MMJ#WQ60["9JH[)2H[ M.OXC)ZLUDY Z3.WQ2[K!+-L0@&X(A.K(1AML(<[W=
M)@J:F,I4ICKDG8'$5,UFJD;/RXFI#&,J\JF(J<BG(J8RGZG(IS)=@2A"2!'"
MDXH0.ITC& GSB*4:$W!^-0/QIA(S =-IG$D>^=*,L\,,&1>3")\.Z3E.>K/*
M@:5S>6@/5EGTAJG#89!?X?XJVCM5WD,[L)P^78!D,EG4$,Y$S$3,S4!R9<3<
M:5F=U@[W&S0$ZG4@BQK"F8B9B+D92*Z,F'M]J]4C8C:9+&H(9R)F(N9F(+FZ
M4$:[;[GMRHZ%K!SK!V6+/5[F3(L%KSS1/S\HHWRZ1QJ7EA$N=UY6HW6$8QK?
MHV8KF6@J3'-Z2-8DZQK+FOB$,$ZR)ED3G]1;[B1KDG4394U\0AAOL*SWF$^[
MQSC,_9C9\4,N1@71/M\_\'<O.;?ND6-E[LG%RBAX7[T$:V@%JKN<NF?U>J>;
M5UO9S=.G"W4B9B+F^J"U.F)V+:??/UDX$S$3,3<#R7608 W16ATQXU8TAUQF
M8F9BYGHCN0X2K"%:JW29AQ3+.#XQ[S'GEA84#K>@L'Y=(.7>UML&/WM-U&S2
MJH,$R0:_X C%WI"P3%@FYB6TGB9:*V/>MDO,2U@FYB6TGBA:*V/>@7/(^PT(
MRR>(96)>0FM]T%H=\PX/>5_#"6.9]@C4(*1_-8M!/'_R-(@C%H^9+T8I"Z3,
M>.0)YL4RE;1KH-YVMR%+DW60(-G=%QSZVMTAUD18)BP3\Q):FX#6"IF7CG0E
M+!/S$EI/%*W5'=MJM?L[Q/D)S81FXEY":Q/06B7W]NC ;&,C_92\?_#D?3P"
MB*7\CLV3^":001Q1 G^]32TM0]*2NH&F]KQG==L[Q)@: F=#=S<W&>I$S$3,
M]4%K9<2,U[E1MA.AF;B7T'JB:*V,>[O6P.T0F@G-Q+V$UM-$:W4G"@RL(9&O
MN<%_2O,_L )\%%"!%Z@T?\KGK[>-I15)6E\WT,8ZKN4,>@1G@C.1+Z'U--%:
M&?GVK-;P= _Z)S03]Q):3QRM50:7NFW*+"4X$_D26D\4K=5%'7K6P"'R-3:R
M3VG]AS^3GT>38!0*QDMG^5!F?[W-[7Y6'D?PM$B64K"[\Y3). Q\5B"UV0QV
MG*7V[5(FD[V6A-IU*CMF^HFQTA6TVJ03#4T_(8XG/!/''VD]HMNO; ,8<3QQ
M/'$\X9DX_K#K'J[5V>4.8R+Y.BF%B9 GDB<\$\D?9WUE:/6'Y,G7>@WFU0N/
M]Y=<3FN%Y=./G[]_O-K+K@E:4#%_]?V$%WPI?^'XDZBNU6D-",X$9R)?0NMI
MHK6Z(SD&5K]#6]8(SD2^A-8316MUD:56WQJVZ"8:PC.Q+Z'U1-%:7=RAY5JM
M#MW :&S0GC9.'%@#OJ93D; HCB[^>77UC7'_MTRF,_A-7M+FB5K87) ]_O+W
M-^X;RH,PP=<A69.L:RQKXA/".,F:9$U\4F^YDZQ)UDV4-?$)8;S!LJ:#Q&L0
M-;OR_L@"&> 1(XQ'/@O@ATFBCAP!?I*II#Q9T_6,XON&2+"&5J$RWFE;3H<.
MN"4T$_<26D\4K=5E:EG=7?9Y$YH)S<2]A-8FH+4R[NU80Y?\7D(S<2^A]431
M6N%!I9U6F]!L:JR?,F0/C/]?A$R3S$NS)(@FZ]']Q]N'W;_HV+W!L/R?+H[+
MBUO>L_M;FCZ/]5K$92)"G@8WXM'.G#OOSMOO*+.WWI["?HX5:C:WGNZ:=86[
M:2QGN,-&<H(SP9G(E]#:!+161KY__<N=VW(Z!&@"--$OH?5$T4J^+\&Y07 F
M\B6TU@>MY/LV$M"T(Z$&JQ0?X%,03> /!E_*P!?)CC>@TD8$DRSN?I91Z5*-
M8Z0-T*4:+QJN\W;'<H>5I=36XE:-]<$YS#CLL!S<Y$0;L@!D <@"',<"N%:[
M5=GIBV0 R "0 2 #0 :@PBF 8[F]RNZ>( M %H L %D L@#560#'L7JMCH$Z
M019@G_M3]K?08\ 0'/.D*74@N_#9KO>OTLX-DRSY?M:;UUG+M5VD+3_.1J$P
MQY8?@[7>FG*#^N8Q($M?/C^E8W6Z.P3[CJ RYICZ.E 33>C(#) 9(#.PXVVS
M?6NXRXU;9 8,HR8R V0&R R0&=CUWEO'ZO=V2/XB.V 8-Y$=(#M =H#LP(YV
M8-BW!IV!D3IS(G:@6.6!?SGT6WVLMKM'XV?LJA_<;%JTZ-JM7O?LWK*%'\AY
MR!>7XU#<K?<>5VF"\:*H3#UQ(5.>I.]5/R^@1S-Y.>)2A$$D'DADU>2VW6ZW
MSPQ=D-HLCB#"/ETHJ;R@BB=D5A9'UVD-W+8S[ R<?K?5ZYRI9>/E@F5I_/0;
M3JMU=J]IADCOS3^NA6!?XE2PCL6VGR)W@(;I1[&RRR %>'E/*$N[\W[]\+MO
M(8\L]7TUC7^LJ6G,TFD@62+F<9*R<9RP69P(%D1CK$-=RP/_3:<"'BEWB'MI
M<!.D =3BZV_2:0)#A'?Z1( ;*"9*IY()0+S/KL4<E'@D$M9N6<QMN6V;+07Q
M ^ P_W]BE;JRBEMS5G&<>M#*)YZ >DTD^P;*=#WEB3"?5@R7JUFB>XJ"Q7@L
MO%2R>,RX'\]QVS*[NOX/$FKKHM6SF-[.[[TW7.(?Q2AE%TS]<QND4_8ACF"6
M(8M+X;Y"9Q/V=8Y]E^S\.AL!J0<>Z_1;%V[KG7KFHTB"&W5DJU1__[?P)RB/
M"RPL33C**8C8IR@-TH66R_"]9%]OX;L_,OBN5.[ Z5YT6N\L_9AOF#)!5=Z4
MW0H]YF!--0R@Y^Q?/,IXLF".,JHN4WHGI&#C(.*1%_ 06L_!TN'N=B1>ILR>
M3::W0::W74_3^^G."S,?'GW;M@<,7@T5TP&U>9X(\1 &@+HOH!6 8\6"ZHQF
M^%*CG#WTL&WV':T.G\49X#U  E!U^.KYM;*6RH U*ENEIO"/:<;&[+PR/)\Q
MT7?<;9)Z?*Z?X^.5@S>*0W\?0_?O !C41PY%YOW Y\CW.!YQEGCB&8=\'ZVE
M[%[(8A_CV-M]& VBKS?_^%6P*;\I; 4H"8P>B^?Y\2>2S9, N@(EXM0NSB93
M4, ;$64XY4/C"V^,DW@&S\4^J"&3/!324JH62)EAF5JY!$/CJ_QL99/_E4&9
MZBN$S_WGO7@&<T>03NS]CD]CJSX*3T\?T=.Q[A7P,\__F&<C\#J@C+% 2I V
M^PKOYHU6<UNL"_X%"RE0V]DX _80X(.$8:F[(P'T, MRJL'Z1T$,O01H2Z2:
MHL-YR39A[%&,?8U@>!)P7YQ\WF^QZP &"0;X?WD8B@7[D4>_L_/"<;W^WQ\+
M)^P=N^62>6$L81Q&"S5V'Z"+,'Y1P $2<[".RK$!T/RT]'>^)0 S;WF_\.<H
MBF\4H"VF'2D^G\=XZ[!&WD\?/W]@'&<JG@!()S8#KU"*/S(H.%QH-/_'O@;+
MD@@NLP2^^DG@$4&*[T1RHT,>NABH*U.:E$YYRJ O:'/PAH$XD>PVSD)?:QQ:
M."D17""#7$<"=/LCL;!9H9><C4 V"#A].0'HY#28:X<9R\9ZI\"3S.-R:JG_
M-\IO?91[#QX97RT.&2$(=WA/$M/EGI YGPB]"'/!Q]#F2Q[>\H5\_X;]<&JK
M"42;*P$!_\#D-H0_].06VOV[4 XJD\(#AU<%7H$X0L4C4VCRVY;M++UHKGY\
M&'5%>[I&2POD(O26%1MY,3 @D],X22\ C+.5-P!T-^<+9%NPJK]. VC(;4Y3
M49PR<0</!D)Q'X\6#$A;:ELO,Z3<O XK#R2C?K(Q#T(TOMA0:)+',R3Z3#4D
M2\%(_"F4[5TV$"@U5H&!U>0VB, M3C/MKZ"O@&N26 !8[V "DP4VCU&D^&RY
M+TD@?Y<PRF(V0WY5;@PV#;Z8QPG.J*&*$;0!7%QD:<W7XRSR9>&28)OS(E4X
M7#?29E?04(R59Z$R3$CA15>A_UH<$M^VBM[EI@!+QZ)R)QKKT1,9*- '0&!O
M\#'MK4%7063*\2X$!;A(4+ (&'!1?@,KB"Z:=G%&&;@N6%/)P?.410)O1X("
M!./ XVCS6#";\R!1(^GGST1BHD(M^:_@^RA/:O,X* .U#%HHC/A0'KS$DX1'
M$Q6- %D4_M@J5 'F--!=]V&^ Z, CPC0BGB& \(F(D+#2_[6$YO>T@U:;^EQ
MT(Z"'E7\4"890.K;7KM5FHB#&PX.EG:!GWZOZ[;M[HIZTI6WWL[C4K99?@E-
M"A\7SL=B,4]@5"3Q&1!/ K8 1UIC"7]"KUS/A (]:5/\4YZXB3M/"(R\..W6
M63$-]%9AWN6;]Z:'R_"W,FINBZ4)5[3H@UM4/!]RF0*ZU7F=8 Y5*'33<WG;
MUTC9NE\C@#QO6!J@@>6:W.)YFL>C\"_TLZ'E&QKLKP0V!BD ]6V46/%E,)L)
M/P N!RH=QV$8WQ9O%T_<3D542,L/-*5B&V<"VLZE#NCZR(?:8B6S#<W"2!C&
M@4ME*"(>"2@<2F*">ZN6PEAZXM$Q;]V3W[JG,9DD0EM:D(,7S(''\_C;0UFM
MFI#@#$OMSL4!+^$BG^A%N"97"'W5O"?B"DA/.)M:E977)T6:AFC-'O&)E*C6
M7M,=7<FX7"N'IH'N0"^C3!4#WTE<AI,;U2 /59:[ S/,97]*[9_Q/!0!0X +
M/H(M!$^*CN;K\SX(6K&Y!RH@@[$6E@=V=8$P E;.-LI&+IV#,-!^C?(?H[S!
M2&_H?*$^X19^!; 1#U6GY50 7O@FPT*6^ E+#-002"^34@.IWKDKZFNSK/CZ
M&K-5"BP6G/MCS(',0!T^*O<3@S \2V%V Q7K:"=4P+4_JF8=@,XDY;\_D>L"
M3TGP@$-4/60<>$SPF5I,4-'39,*CX$^^##_A[]$D+2@=YU=(4LL5/.V2C^^'
M7L_QX:>&XIW-/J O5DS*E"/FVKTE+V]=*P$60:,"4XNR"7M9$H^E?7T^A^G&
M73#35NWMRCA Y6_=\M(.SA/5K$1=!@J-G/$@4B)^E)Q_%?E;:EJ'@R.S$=A
M-:F#ZE"<JW+6!VXIG7F6((6G3X@C-SS0U<)P'X+=ZK<&]'SJ4(#\"3P:65G@
M[Q$1;8MC;1V4E\2Q\C#-0Z@ ]\1%VC2V!:"'K<?'+T*^B+,4BK\3_GM=U;!E
MM\Z*YV&00SZ7XE)BV!L4K9""RDG71;^Y?^#,32 #'<2X+-[?</",KJW;MSNM
M(:XG;\PBSY>3;6?8V_;,MM];=L]IE?ZS]863;91C]P<O*^2)8X?ZQSIUZ 4W
M>PRJBUT/3-VH=)!-8?L2]"Y[P@XD:9 K_O+W-[TWQ]Z<M.5HN@*-6T>EC^68
ML^!USS/0K=MEY+Z@Z_BS=AT_H>OXMU'"?OC'FG=GRD:SS0?7F3B:6]1L]^$R
MB-).7MA+5G./P&HF"KXJSOH<>9C@(7XX_RCTIQU.]FWRP%2@$>3-DC=[:M[L
M,7B?O-D796^UW#9YJS4P%R93UO[$O0MI-<-=)=IZ(6T=\HPHHBVB+:(MHJU]
MT]9;]F&*.:)$736@KB<FZ .:H-,$O8D3=*=E:&1V7T(_A#W8=5#.K_(=$"H3
M,\XDCWQ9L\#L8<?EZ-JPCYN-7GUCV&G?;/2UM.VHR$RLX-HV' 033^0T[8S:
M_=RW9AC<#X/L'<Z?;?)MFI4QS*!C#;H[1+T; O4ZD$4-X4S$3,3<#"17=^BW
MT[+<EG.R6*\#6]00S\3,Q,S-0')UUW&[7:N]RW4,A/5GRYBNVC8S(/4YNA'R
MU0&IO0R"B9QDFG7=SP4PE<.]#A(D"_K\P>CTK%Z[17 F.!/Y$EI/$ZW535\<
MQ[&&;F77R54.Z,KF+Z<+=J)FHN;ZH+6ZF']W8'6[I\O,!\4SI3-5CN_\['Y*
M9ZJ'E6Q(O+H.$B0K^9()S-!R>KV3Q;.A\Y<F8YV8F9BY/FBMD)G;5JMWNMFD
MQ,S$S,U <ATD6$.T5L?,/<MI$3%3RI(A0W#,VX?5"?SZ3'I/G3C \%AMIC^K
MNS$>O?6(4IN,-;3["7EO/[*C<L6I@XSW>3"*,8BOSEAWK.%PA_C6P55B>2I*
MY4IAZ$RKR:NB9 #( ) !.%(<K6OU>COL_2,+0!: + !9 +( -;< 3@L,0-=
ME3#' -0E6:PL'/7N_@)YN<34G7.J: ,L\1&5Y(M(69#?YL'._>(V#SQ";H\1
M/4HW,VWAYP7<Y=HNDI<?9WA5HS$&O>''!3QG#$S4B K-?=]JNY4=]O+D>)V(
MQ3_=16FR V0'R X880?.VRVKTR4[4+W64)H=V0BR$60CS+,13KMO]?L[W/AT
M4C;B:-%!PVX^<0XHTVU&H*9+$SNR2Y7F]C"2/NIE694SA&DN#0G6<,&:Z(54
M)&MBBB8 F@1+3$%,426@KY( )H6FPOADQ%G,Y^!?#O-8]7%CDD7;;K?;9X=/
ML_@MDVDP7AP]YJ ?Q<HN@Q2:XNUT,YFA36:EH=_7"/>VL69-4FE^BA.63@6+
M@DBP&7P]E4Q ]WUV+>:IF(U$PMHMB[DMMVVQ.$M8O $ ;)[$-P&^I=)NXC%[
M.^C80P9-"8,X8HD8A\)3+T4Z=R>>"?58KV\[R\<P;R>*HPM5B#<%$4+1:8RC
M"V^^=8>VNWQVG@0@8^@J%![R%*I.8^8+$)<70//BR&)\%@.[_9G_A7V&8J#;
M^%%":Q/U"QOS(&$W/,P$XSXJX SSA2PH;"R2! K.FYOR.P%?+QL8H($7<MD=
M;+U,8^_WBQ&7*(IX-A>1U)7DO;'9%2ORE3!=B7N>OOT2FBV"&R2AE2S?#NSV
MLK\@K&5NTRV7I?[[27 C(C9:L#"^A>%*!/R9":C*]P.LG(?APF*W@DVYS_A:
M_4$$SZ9QLF  DFP,(YIAC],I3TOM<'MVJ]P0P*<W96^=?FD\L$VED4!,_0+"
M23(L$H?O6\@C:%.TRMP*<!3%G <^$W<H*A3OQG$M'E-#H 6=C:27!'/LGU0#
MFLVPJ4[+[A=M>E38<[Y0DL:"X,LD$ZL6E,IJ]TH0+N3N TSR_J7!##L& H$"
M%6CP%Q"H'R?02@DB#T/\%Q_.'U';46?S,%X(P49QE&&5I9Z"GKE0AY+8<_72
M9M_AR43,>!#A>PHGR]$#7&Q468!N%F*MXR2>@1+<Q(D22K$]%@1V P,19Y+%
MT)*$@1?QNRY^CH2[%*=-]+H/>G5?1*\. -U]!K\Z[;*2;B'8SK!$./LCV.VL
M^ESN7">/3>2YTMZ!W7L1>>(PN7V[=<86@B> P@L?=XN7*\R953Y&K>O->X1;
ME=7KE 0-8I79? ZB5"3DI5HXJAREAN,,WRSQ^GT>*TC.K\01>[';=7 O>B_W
M6^]/$&LW'J DILO4\CF?"#U5N^!C:/,E#V_Y0KY_PWXXLLPJ#=.0V;BW+ _L
MOG*+"Y?C*7?#9E_'8RG2-'<<@(*4:U$P'[(>!X8O%1N5L^B!9E:6)U1?A0$?
M!:$V0'D3(FCYO<?0GJ$?C)R%!D*[+LJ-4>X5N%$EY_$>?2O/:T,]R,7E1Y>\
MZ,42C0C\%F:^<D;B!)@S)^JE/=GH$652-?(YWE 6[<,?,@)*AYC\.N[N>F9^
MA..IJZX,;3)%.!Y7@*_@5 <;AK0TO^WT-OB*+YR$E6>N)1:;<9S^I@LL%MU[
M.04_[P((<Y8W2DT*@5O^8U_;+$7&R\!CE,+#UP+-.__*H'Y=B9YZ;Y@/M-R5
M2VFS7X6FN[?@T0Y*[*M?.$?J+_JIG6?AOV/C?++R4RCN?@QBN9#@:OZ1!5*Y
MNC;[D!.=FBJ#_PM.:7FZ?+\J;+">!>=3 RV5):^C.%:><<ZDW$-A ;6&/@RF
M0+.6F[-RK1;4MIKG0Q< 0Q+MD%^P,4 FMQ;EZ4NLL #2!\?] @3$9#S^?^U]
M:7/;R+7V]_=7H'QG$CLA*6[:K&2J9"TSFM%(CB0G-Y]43: I(@8!!HMDWE__
MGJ6[T> FR9;&$-6W;F5D$@0:W:=//V=[3GXG %P/'^$'6W\%O_9[WW(8=3J6
ME^?K-C\8V  TRHV/7LUV]9X+=@YOD>YS;I&M[[1%NBWO!.U^-I(1KUG7L*\#
M[W0 5KZ(IQ[Y]H27Q+()(%>RCS65PR(.$((IGRM@S)#"-%XQ 90&:E/[U&#8
MAV(:H?!XY(8$I86(%'X/SQ/>:>BC;\_;OTFEI%_H=P'(.):I'^)L*&<%>B)$
M1-Z3@R*:R.3I=OM,M VL?K!22S'?:FU_O4&UW=^KEUKZQ\%I\^0"YAX6(_#V
M09RF_R?3YW 6KC<<7=4[HZ9#=D?2ZB-IN&!)[2/)CG/I$^DQ ,7&HOB['SI=
MZXX:!09A-BA21(EX3382>"C=A?EH)",Z"OP$%%89K2@-;#KGB@GZ+F%$YG@%
MS0D'"1]<0[2H\S0DJYT\NZ"-PYP]O3/QD!^V9[RA,L]! 9-^IE &>IEY*@B>
MAFF6>T<BC9,B]_XM16J[GJ7Z/!G VK-*GSG=1(EI\9;[./^!G#NC.NA$"#/V
M%PL8 ?IZX0?H94%_,6!P7\H@,P":70?\K@D%IN! QL,E(\>& 12@],,D<"!R
MG79LS_*K?26&U+8=^[:T;5=NTE )LMXDC]BORK'VE3N6S,O-TK9[WGU!C^M:
M3ZO7/J&D(;=5EDS/OV9<HMJ0H2CT#Z!2N[:>_V$+Q,K*_L@7'&4L/#]L[O;L
M6'SN'8)P\86=A@Z:&Z>+]M-JUVV<H$R+ >R/FHF3DZ75:I<CGUJ<E&''L8\[
M$ :,1X,^12KO,1J2:"<G:25 @/(P3*(HN8-_O:_UZ@?A[:+UWURT_G N3"(Q
M?3^,Y)?9U5<VC7X270/ '73U'JUS$]YPG+W'2'L$!].<1)3C[;2V>YT?:RHB
MBR<DC/&=FC0OCWC$BCFSIV.GN[/9Z6_M[/3@CZTNS T:WU]0 1GSVUI&];-V
M^\>9\=5D"M_\A-M#?H&19 JZ($(>A F=XEF&.VA0P'_@[S)@"V^H_M>)K1/;
M[R6V'#6><OX,O#, 9'3<L8D)\CM4X'5>HN'/H/!SG4GHX^?# F$L>CYO*)P,
M3QAS2)M^[_: VP,UVP/DRRCW +DU4FF\[H"7%DN]DV$GP_680M;CF9],R/^@
M]/9-"@(+>)Y]<BCE%W\2X\G>H>5[<3+L9+@>4S@CP]6D#AU,C3 [NP"-#.(]
MD2DH;/1I@UD:)DZ2G2378PK?_+0T@U\'54SB*:=+(JH@_]Q,6,6I9R?4-9E"
M[>'(5:P1O804.L&,F"+U1QC[4+ABNN<YN75R6XLI5+""?1-:<!$])!2P-^%(
M.1P"DG *UPEN3:;PS4^ 'P W1)Z$CY)QZ*MV#!S" <'X+)V\.GFMC[RJWL!E
M02GJ57CO.!!IX"3526I-II A03B&)^7L:ABJ=* DMDO'P?ZR ^#X327O'#/B
MQ!U6IDBDS>$HR#"EP>I::R?U3NKK,85O?AI&R"'"@DWE\ G*:NSY19K*V)]6
MV[MG>RC/3GR=^-9B"M&IAA4V(LL2Y,T XPU3-KV9X!WR7413^JKAR;%$<0'C
M+KX-TR1&EYN(&A[=(2)U?8.IGF@#RA*IM)8(O4LJ*Q=C?X U4!5?)1G79<Q4
M1TD;^B\P7>#H1"X0N'2).Y\H0 :PU^4M%VVQ;LHYAW<@(EPI$ (*S\K_%I1@
MD'ACB768>#E>%E/6+.;BBYQJZW/.'8:I]+I]G3Y,_E;\G-A)*"4^A$]#9'"A
MND^NE;>JW VSD2XA(-(JE4R/7">5DK/Y:C1*#PI6) ;9C^5;%:FY0^!EA#W@
M^C(/O]9I>*^7IZ0S,Q..I\3QE-QKD 2@\Z)D0B%/U!/W9!-JK8IG=+;X!V51
M)I6[&G(0K;\0 &924BDH9PBWO/NRA<=BJBLK&J"X<M+%<8+C&(>LE$#CJX
MG0FE;@=4H=\-[DAORO6K,Y5$]V;></&3]$<Q+-A-2-Q;?/1S52J;:B$79\S7
M_9J)((>:T:^/#CD[PK85%0R2EIL7QJ[(OF6FQQ7'("T+7/%93A=DK,PAP-F]
M P*$]#J+)8>.6+J9!)@HD:T2CW]=Z)#E:/K<A+X'?\097DC(!LN9X7]O$AJG
MR,**9X SQNS'-*K2F92)CRBK2 IYEQ11L%1F2Q'#\=H3"/OULYVEEA5(8Y'@
MK!.FA2?DZA&X59/A4*9>P=2) \(KQ)"&%4D,F.$LH@E VDY4#$RN ;MZE$2!
M1$*D$WAU;%DS]UA^&&$V?!;B+C-$:P^701;X$FO1595]N=_P(:RRQ*T((Z8+
MJB(^I$""5_3#B<AU3=<P2NY4W-QX;$@?A7%6#(=PL2IJ1_Z[;#BE)T141XUO
M;^LU>SD'TA=%)DV4DUZUU%!-#;_*]V+$"9/'Q*&!'),K2,UF*11JHO0:9DAK
MB4H:U1Y>IRG]<&!(=4+HCXK=F9UND%N$)@TFC.+<6N%Q63]6;K QA/ W9H(E
M&,A8(=PT:&*MV936 8;>P.MH/'PI/4-]Q^1/NH9?C4FIS&6#HO?CI ;<PD$8
M%;K0;E:P&JJ$-4%NA.H-1@+@/Y&PPY:4<9BD7)&4\*KHLPWNR]5[)#YWZ+<(
MLTKB)KX)RGZ:%#>L*<(L*\C<HY-)3S@5U356OA@NIC5%>NT;2IB77NFKC1Y3
M8C66%L(O\XH6T/6",\Y'Y&F<JELM6#J0]!2]-6-.,^$;\>XLZ$!,T6>"8CNB
M[4V[BB>5M JOU%RNJS[U!W*:*&M%&6'1M+(%Q9A9NBP.1RLZ-250,)#6CJ8*
M8I'!A?@OI.[!;3=$*TU$4=T(#9[@-!V H#_F+.5+'T(,@(W;2P+QTP0.S0,0
MARGL]#MT83A@LMQSL:#FL<JB@A2D0QE0[)4(GDJB/IQHWYYHJK+M=\N:R@;Z
MD7+YL!^V+:(G=6*01_9A3RT?VO*.'S->FR: JO_ <B MD!L@Q&X:K3B[[=ZV
M.@T>]G(/O&N_0\7:BJ/@P6\?)*1<^/X\+M:2/_0VJP1D#UY&.G&*6!LQ]I>J
MGIJ5)LH&SX%!J\CCP(?OHKGNV4ML5"%I9P %VNZ"5QIC+;F_@'WQP8][Z*1W
M6][9_'R@_"UXR,PS!&&_P7^4BRJ5MR'L.$HXAYO0P5FR%&LVX!-%@^1=,/.N
M=RG3V]"7>J_8HH]/%@4<]6EIHN%I,I#&P@RY^![OQ>QK<&33V5H23.+WR5T,
M*&,43DJ">;@X@X>$  W1$JW W)?A2G.'X?QD'8&-XW.)VHD.Y;H#<&4]N#(3
M<3>7##> IV4NTFF#DY;9$E4D' VVN! N I8D3Q#O3,Q"(I56 N"6]Z&TH& G
MAI;1I>&R-0!4Y0'H+)\ )JTE\QR8N'S+NPP1LM])VLIQP*J'-KWMPL&/"\7V
M9GF8AD4:4\@>_@R_<.R>'/%H(DK[2C3'"[2I0#$$Q-5&A8V:N W_020?J#,P
M@2 %-*_,1RMN0<C>,.]RT,E*,K!8=%(YB6#%%8+/6(;)WJ2X)VMTG!^=8V!F
M:,Y4^ 4L3[!=&,FD*J11/E3H/:*3&*A'A++BE66%]JHA/:D0Q^M)3C%C(F/E
MG6F>%38]*E1[$;ICR&C4(1/-5D0C0\.'?GHGS7K!HL!_X+;.#EBZ<P\$&=.P
M1;U+/#A);B[D#0@K;M5C/J2;ITE"Y"'FFJ>@.7NJ=W!,'<OGANB _E& D2]3
MV.D7DGH9P/X[1@=.I]W\A_8CD ^?%CM2BYV9Q59["Q46U?Y-BA1='KDF=<G$
M$'%L.B"74W(;9CIZ>RG)W^EUM_=U6/.R=&OL<[949[?7:Z#2$&-B8&(WCOEI
MYVC!3X]T8DEYC[Y]#^\M_H"R$SK^GGTU?Q;LO6,LO.*M"?7=.W_*=, #+H<S
M 931#5P/LR,Y6*'@."A6=)JAHPC]G^BGI%8T%!6A3:B;^SQZ!.7JX$#8\0.7
MP@_A$4AJ:=W2\DHVR-F-M4,$@U6K$-"O5.2)\730W*$,[ '!IS=P[)*[*S5J
M0H?4$Q/H4<XLC'&4[ZU!O6(>+5W,F#@7IMK5KFZ!A4UP<Q@Q_%BP4XK7;G?/
MN-55"$B=OF1$A+<J'J7N8SERDVHI5$-%QK6;%\T5/'"'_'LDR4(759-=ZN2@
MJOQ:Q\MFPVQ$==!@'YSIL62'&]3)9:CSV;M)'O54)L,%^0UX"4R(/VK,/0V6
MH8 C&9N9B GN/LQ'N?R9HAS[,[RS2S(D9F]9C6_1!#>TJ:E<P<.9)$4]8O*J
M4QZ%/[7I=<UAS*UT2D=WN7Q$-)8F_]'M!$P03:=5-M3[9I,$*6,Q+'AP_L^3
MPV9GU]Y^RW<T[?ALY9['7<1];I+8R+4M)B T\"!\>?@334Q L;F9@_](%=\1
M ]Q8#-D",%[3J85N:6/SKK6]1"RI4KFQ%TF]%D^:Y2PKQA.%U:ZLVQ"U;BX^
M$[N63;:(W;H*^*</RJ&8<)(*]21#%W>N_0)&\S!I;[DA+2G)9DB$5=<%T,VP
MI>TDOUH<@BZ+1&>1=%T6B<LB>12125I!#PQ0'J1KM8N- */RVAE%EWJ*[E)]
M8FNXD8B&+>]?"?H&M36I<1PKXH:&<.9S##?.?UJ&EN:_8ZM__G,\CN8_57;X
M_!=DJ<Y_K(^(^6]@5N8_S#&Q?\%KJ0.E_"))R0>KX8RR[.]HK@AY )"+1*I!
MG!6]SAD58[X$"F\XG*X\)R_QOO<<DY;35GAQ0>$/I"H-L\\\FB)6?E1"/4IT
M*'1)KAS!,,2 G\0+0LHML%P3*J42?0E6H/!>$*O&L""MH^0;]&:J./5A3ZYC
ME:X$%\-!CO#QELY*; :GN^[AY(["R5Q!A]!,]LP ZQU,X=>BX?V.+GL [_(R
MO!D+>LS'(DT 3DGO- 0#ZA*3"WP^_KTC>+88P"GKM\AQ IMD;S8SN4*/=9,F
M=RLR8"K))=AO2D74,2.A FKG:??1J /S0[N^RVR/4$.5F7$IH*!\/.7M9,ES
M-/N39$"N-],>8 &H53\B,!Z2.4'3"V+"#5J.DR2@1QZFQ8VW'X!*"\E*8 \9
MW8]?<>&S&]0HPC@ X9DY"O?B?"V52#";CK''#BD0/IQ7S @S--?:5*++1:X%
MC8'3JH<LO2>]?55"]3+M+>E.4<E2PTN8HU-2\D)<R0BP^B*F?#WE\S0!\['!
M@@-.YQ=R%"JOIG*F9I]!["5%O+(DCF6TIWKO( [&JCXYR77R1#6SA:-9P;+4
M%]8G(KB%&V/B%5L)[(ZL=F7,&F5N#YMEI&_P@5:.3QQ81BN<< QMY]ZO9*%3
M>4N!G8<U2UA79:A336U'RJ5K&8 #&4O-B3>3O3@_Q>1'S97X1WATI VX0XY>
M9GX%ZMPV1.H;UBA*@R Y$]V,/0-DGV&@KDSVU%8.>WI1(^I@GIP?!Q<3YW)V
MNE?KJ7("V4?KJS20^=F<N\]<+HXV+G42F)6T-C>!MPGN?XPJ$-OU) U]N5>:
MXF7 AQX*=VFB"46TW:5+"[1,D:HM2UX-7>-7/IEVJB*[M<\\R\E>RIF613ZC
M%;FX"C9RW4!F %2A"PS"L>XY*,MS[?+HP-+PW%V%#CAMD.+P<MR)&EQ<X$"/
M>: &8*@L2NU;^JUF,<P'67+-3J?5[W=^W)N@J,0W#."Q*>_6]H_/8;$L:51R
MG]%R;P3ACS9:OM%D V3Y]S<89>I=_Q>]PX3&;N4U[#'\(%+_KD?@X^3JZ'>O
MU_+^\6G_[.KD:O_JY)]'WO[9(7YP6J/@AA[:X<GEP>GYY:>+HTMO_\/YIROO
M]_V+WXZNO(N3R]]J-%Z79K"B>:7*&;G TP_5K^L5]&(=(Y2X!3"N#+)@Q$5&
M=LT'>5&MBIF)F"!4J[:3+$M&R?UN)?U2N5^$"?A6*]U!$BM;WTH(MA,E]DOC
M3G4_O\4\ DF=>HFA"-W !JY0HA;A"@7)V70NL_U]GY([*A:CE19E$J&4Y]KZ
M2F5[L>J?:FB+V=+H*% 9S7< Z;A$R*J5,;4*.FVD;);,A#4S>2-OS5>8<#+5
MKT*IVN]4\D2"0/&'K5XE07)16PM.RL.57)B*XKVMKA_ TP@>PHT^VV4:9,,D
M),Q@.ZO-Z.('*-<8OCK,04#^"U6U #_&NE1!\S&7<ZK#&XMO2^U.>0BF:6G-
MX)W3-RM3K&;DOJ)IWBZ2?-K[%7E3'6]5_BEOC4!@7HY793!1-U)5U6:'DWJ8
M43+"&TTGN)FI@2*8#6VN9X)M',;5/N95;:%J%6B4<:)L,,V8HMJ+J1(^H;()
M7+_7ERK 5!Z"$4U5!KE V2N:IS0HO7MSUP)>X4(DY174H84/">95HU:DO+\D
M54%1SD6<VKD!RL:?ORU:X7@XHG<KO:7?QNAQCFS?()SX-R,X=M'+RQXY7?QE
M6 /*)O;FF*9R+N4L':BR'?3BA.2W2R7LRSBS/>HP"(RW<[4I;47CD\J,R]O*
M/";/"FTT*N>G77J56-XFV(]F#E39F'HE\JJ91= '[8/R,G')<#Z:^I"W:\E*
M=\2\;J);+CA(>=$6?,'GJ!^)+(,WQE2,C YIV"--H]86-I]2F889O!"[FNA.
M("18@1A0J= 8NQCJEKM& 2T_?Q<(JL5/IL0&VUTHOCWR;Z&GL_3N?(HI\9P2
MZK*O.+@1I)1%"Y(R+Z8F<F+!.O8$S]YW6CD\E!<LE9C/4$TZ9>$PB3J5LX
M)7K^0+94)KU+M5S>+%:5(YA<--L"= ?&@M1%(@+&K6E2S'QC1NA0,H@>:8L
M R%E!2@ZI6-?NXFMWTK0B/H$T 4BH'8S4.$B)8T&_\\LVA-6EK"7?.LFBL]@
MGNB*]T*FL3Y[9>_ ! )E^CF%@32\HR)-&MX'W-<$;D 3-KR#$?J[I3<M!!@-
MOPIX+?JGA']=PJL+C!FJ]X-/0.^/O-_@(UBB.Y5(?0(G _PS+292[JD9RF1#
M953Q ;ABQ'3N+1XMW=X>8:N4WQO*&J4298HAS!"/XQVIY%WEBP]D?B<5SK1*
MX>WU6;5VLR[RF/0P5C:UO.,9&K(JZQC9L66@R'+$+PP%->SD18,_8ZM G.NV
MRA)6I8=U#?9(!C?JQ#4:$B,4*P?Y'(IS#5)P7EV&5L]E:+VL8$?_FLI8DBB[
MIK2+ %5J/1 'Q3CZ+>_@_.SJXOSTTML_JU&DX-#[>'%^<'2((8T:#<L%,):O
M6)CY$9]G!TKF.8W)R'V=UM$Y8U9CZ[G4RS+AO%'F%5 ;<4J[4VDA"E.R8P2[
MA?L%9\=1Z6-J9?+K:THXI:YI>".PWC53DIV  3>*53K>PNS0H)1 WY; 4O-Z
M;^'6@81G,DR\*- .[_1$L[/Y5KY#N-K9#-0_RC0)NT#HG?(VTK"HJ-/N@4Z=
MW+F:E" >FR@M[X,N&J"43/5R% =XR(RMF"WVC\+K*NR+9GEC?HC,VD1C;'SU
MY)%KQ"R%IXI.+8H5+#I(R>M!!9G.W%]>65D&P@Q9@=*:==*23DFNB-?C/HE5
M&:+EC@:3D/,MJ_F F$(7CSB9$:Z[B9(!5VF;1#'#X#;ULFE&]=@5C@R5MRNY
M^+NL@"(-,B(%$VIV-Z.0!7'3D1D#6B23IM2*2JNPA,Y[^Z?_Z?7WCBX^TG_?
MJ8=7JX;0[Z'OK9NSPR_4M2C&$^9?+&D_NGV^Q?R89G^<E:F.6+4EQ@FFPFH:
M*BKR$P5( \VCE4MN>54YIU2[@\Q,J9Q*75O78#\F*.= &F\X9502M11'MF*5
M9JON@*YVI#6)#'E54(EP&2;?ZGNR$ST)V!VM&4,,WUZH-[W1M91+:.?^Z9>Q
M OWF$7!+7-9EBMJJ^&<BXCMKOI_%F; NN_I<29V(#4,0<3 JR;'R)>+$SF;0
MY)WVFBY?4E5D$3((F54CS#6C$4*9]0YB"WA+@#Z9C+RW 6455 J=$<TH,(-(
MAO])<$9YZWWR2IDH ^Q5*34]-5> S,=0^:?TWG.D$%AK@=&VU$(!4R\*/Z,G
M#0->LS]H/&ZBEDKJJW/\])WCY^4X?M JN@[#:SK"KJTCOA[8\^/^Q95W<M+R
MSJ]^.;KP3LZ.SR]^W[\Z.:^3_Z>>CA;CU^M<1_)&1.S4DQC&KI-7K]/R3H]^
MKM%J[I^R.^_H\.3LYW7WYZT+%CJ>K2<Q?,*#2GDG[03/V@D<#XM$."ZY\;"^
M#0.-@-A3)NJJ-*'0]"06\RLQ8-F4R/83D*F8'\"TMF5> E%8(5S!%), @']0
M$ "A7#4&^S<W6'&72TQ.,SD1*@0XDV=6%D@N*/]B?H0%0<+USSO[%E5J"F)*
M;2JN,2?I6A5&U4B3>IW]5NV**([W#Z[.+]9=C7YG3]_3NM-!S>18*HM>UB++
MM UV+WF33A=946Q/"C",;Y/H5JK\?-!+E>IZG4$V4Z(?RY#,75"LXS C0IC4
MHJ<JVVT8RAM-\6JQRZ!96L8&K%IF724?IGXQSJB,%ZNK;ZF$/Z9T&\Z!A_>&
M10.3&OW^49CG$573QXFV#UO>ON7U"<<X3<@OMH1+P,XM9'( R]XNG?J^H!?P
MOHNNYDL?4F:SJB"S7L<,2/1'D&7OI.&=H%^OLZ]3J4S!J.D$H\(E['18G)49
M<NH5)V;J>M?JVMZW?1H51@DJW7T<JT1HW$!+N3 LCQ%ZZ  :^)P3*J/D3KN-
M&-Z48$-[CI2#KE(5',C,3\,!JXBOF3V'/FH6!'KX9J<Z#E/--4,1IT*G%F_)
M2(J 7.!,AT#J3'="*'MBV#T4,G'+VTCW;] 7<064:GFHROUCTSP&Y?>&&K<H
M43<.>\Z?QGO!T986D[P"FY]"%)]OMIWQMS*\]6L!RA!=P.RUG:^AT+SI_Z>"
M4"I8]&<[6<#+I1@33[+FG5O.?(AD$,0J.>1DSPR3_,?8;XS9A],;$6O:&?U]
M? -/5C;F+673SR<+5*F+-?=GK[]W41G)QTC$' *C  ]Z\72T:OY"LH5%:A?B
MT=M0K835$JU*LV)B>3K=50>&*$L94XE+OA$198ERK</>UNPP9LN;EBJ\V8E!
MIT%==@N8 [9V\154PS-+!V@ZD8;6!GS<6NS2^N2A@@?]YK*L&*BN(,PWO#,<
M7(H0.U9MWF(Z6T,?TWX1E04R$E,%3HW^((VCV^G@VQ9QV;" :8$J7"AF'04M
M-+5<\LO6:CA>]5(FS;@RVH8M#=3:4G%L+&9X4;H-V\K,I AC&%#1?8R35*53
MS\N)]I<H[:CBPK-DVL?(A/U%8'BO45WF4K-G:BS3$*M/B[C2G4I7L/@VR[:N
MK0LJ"T&5=G8LMT)"4S*GED KE53A40IU*K$\B-9>T7?7CD5[">M&;<Z>?>5N
MLFDSE63IH'0ICIH!W;"%EFNL "WUILA4 R]0*I1$CB8A,?249/B!' J4]P9;
M6''3)N %2ZY\9JA8_#0U[DQ2/LJF3"G_2QHXL3"-WF9.*PE<C<#-L"Q5&7#*
M?:BX75?XVMPA/B]D%>&P!8(;FRP4C%FI,-W%Q"*197C(J[U8>!HK1:>\O6&A
M*BF.ELJ_IQN*KKC$5-<U*ML"?;;%F- +D?"B*T+O'E4:XX&1%U@CT[R)Y&]H
M<"Q<C7&"S9YURQ@];G9\1*#".0B.Y76X/M(J!X6= ,?<>$[WQ][O2.0,]EY#
M8:]+L'QA]-X_X5WDU/L@XL^8LL->@<M_?C",Y=X=<D%$Q.*@*35!*&$AXU"
MF8@SKEFTC\W$?60JN] 4"\7)K<Y@8>;P"55J*XRG^S[![;#Z!:[7*7\'RF[!
M.YGQ'1^>')0#%!E1>L$AF.H6&ZK&')WQ\"[D A(PA()HRN"!4ROEHF0!F\(+
MI##S!R%69L*JTJS@^+F3'RB*L42^APQ#";RA*@?N)2\I"8>9\FXYY3<QE566
M]X55@%%CU  FE7G%\(5;*BD2Z\:R.SG)F==-OR52(K8\1#?*X\7-*A **V5=
MV0O(E:FC';B%0%"9*5)RD=" LK9\<@W,/,6.S9002C!_)=V0*FM53RG,WO0&
M\&ZFN[?BJ^0,%%P)FLPD"A[=C87*GJFG$QJ*/[1;G9)18TF=/NX<?&; 0D6\
MCIS;I1KMHM/08BJP0>!$3)4GYE_4V$N3FNC:UY1([@*:6%6*%L:ZQR8_0_4P
M(;(Y;RC"J.#($PZ)7$>!:G ("HT0*7N2U  QL8;4Q)*S,[2ZF8Z9H%%:1;/V
MN[!#$Y.TQM5".8D^3PR?P2-*QCNUNEPRK2 [CMDJ,5>#G"'D#BORZ(.^3,;4
M(),83$,EG/Q66C9),.Y&,")./B0^]Y*[,%T@=CPPNQW$G&0GO!UFNDNJI_$B
M+9Y7A8#4Z'0:L\T'"(+A<3.@DN2<5Y'Q3&*W,^5L.L/%4QD+)V#1$$MR02UV
MZH:KS 0'4%9X&4R_(,1WH%C+QCX+"(1X9T><V2@PB9.< Z$I&R5!XM;"W&Y5
MIVX2K] R*B42MIDGD?O68%=%3E"]IN7M1\BTH!J]D@E?/66O%$E!P\-SD-Y1
MGY\7BD6"O2JLD<VY)Q >W*3L."%^2< .Q03_]4-WDR@/E#46)8*%>HGRH;?D
M$U.[&G0UP.*Y(&JCY8: K<-LYMDJ951)4Z2;^<YN_,;+\%&_NCS#39=GZ%H
M/&:"T*S)X!E"4S$S[[7&%*1;@U3<82<8@RE*,T@U,A\NTS=#:C0$6!X#'I1;
MK'^)6%=^\:6R2Y# VE=$<CI;"#6HW2TZFNIX7$C-3TRHVS,=]+Y%B5/FD=;6
M"@*1/Q2[PZ,2-D#-LA)G>XO2NZ@Z+,1G-%^(U&GZEEG89 [S*TP5;U8 :(M)
MDRAW"^.: .&QN:&3YN4.$WV@WW''R(P9P[6E1#YF+=D5FG^NTC!):+'$U1=I
M248UP;X,RKE;RH;NK*ZZ'UF44(H>L0)$<3''RNB@)DJY+(]^<M0HRFMMHRQV
MO2G)6^2!,S!VACN*.G QC*B05RO'CQ7\:<SX92J[6=D0LYV-T.C7[UNV1Z#"
M NOM=<O.QD.</^A3@65-QN254:X@L,0Y#T:_@^DDB3DVE<(C;.3$3B'M:"TU
M#S4X23'9A/<D&XS*BK0-$':B5<P/3C_1:33Y="*KVJ^A)R*QM>3R66F8P()R
MT^)\ZS$\S(]6?JW:3\WYRV+,EL3(1;4AFNEA!:)%=#A*]3_"C[=T13B;:;DW
M>M4[E0-8(6]6(:T5_9AIW8'Y3\JS'9$R5<E8:K"E0W5N#A_EH.0Z.<N[O<";
M7\GR2F+:[1AW*IV6"X4:M#\*FZPV95-]V-B=:UHCQ'^HN[X6^MYE *S, + \
M1JHE92F09:*?P4V)*>U23A)+^E5!ZVS:"3D*A^(V2<EW9+E@RAZ Z/*K)'XA
MIZ!,9RWV)+725W*<C(I/CJ35.,;0I8@15%9V/+K0M[H$T7XH#VI]/,56T,0S
M/0MU5>E8$$R "VEKFJ@KZ45V(2H?MO5ZZCD3]J/2RY*6S[%Y#<#7>&H[.E2?
MQ4@:[)#8@,)PHU9':OHK\@)4:VQ56&.V6<IL?PUFKZP$S\O&SI8ZM4X[:K,9
M#1$7TP_I<=8%#4L2T+3T1R4!9V7E-ECRJ!]T,?^0\BZW81*5_:^&"J?C$F/*
MGG>'#*/LV49'O$"RKOUX6BI1I0RYK!&_H"%K%;F PVP^:P_.Q5LK:J9K<9,R
MCJ1_0XW(J[_3D=1*O>4R56T!!*6*+>6]P=UV[]'?3G>OO^Y&.1ZJQC2!1)'2
M83H%T,;"3Q.&RZ #-6Y>C;*TH.HHIW;[I2:2C,8"RJ2)*>B (CZU2..*J-];
MB/-HR7Y4(Z>:27;=<F;G*W:ZUT4,""#,\ @.KJFG<9W*=KHM[]/9Q='/)Y=7
M1Q='A][E_NG1I7=^[!W]XU.-ZF9.*F/1DWN]:':OD^$U!J+RZ76&77+J\Q)7
M_\;^4I\N3JY.L/W,V:'WZ?((YUJ5?*Y[H=*Z'!IG8%;6-HW/:A^E#YCK8I+$
ML!EB.,^NRQ!6G=10K^4='AWO?SJ]NO0^?3P_@XURMG#+EV]5JZU]<GYA[>T:
M#<SMXY>^C_O7,'X)9]M0PI%6LL_5:O_V6][O)V=' !^.C^"8.SRIT18P'=]J
M-":W+5=MRQQ#05'HH_NF9A9'[=7%9EW9=%A1;%IL.C7:CR^ V"<(;W_Z6_@%
MA#D^*\8R#7U:\^-K(?M;6X/=W69O2_C-_L[6=G-';,IFOQM(T?-[FT,Y>$->
M09";"SG\^YN#Z\&@MS,(^D%SL-F&WPRDW]S=#'::6SW9[_1E;U-L;;_Q8C&&
M]Y=^\/[W/(VNT.-Z/KQ*@_TTO8)[?8@2__,;3V:^F& ^2UJ@O55#5?:(U7BS
M>(Y[.\/.8'-GJ[G3W=II]GV8[1TA-IOM84>V>UN;8G-[\UOG&&GH.NW!9@>F
M=S](L,W-<21NWGB\D6%[?\E!1K[(  8?D6V[:*B#?E_*-CQQ.P@VF_VAW&WN
MBDZ[N3GLRTVYV^T'P? IAWJ5CN/\WI'60GLCX#.[JC)W"_Y=IU.G2N3\9QWC
M3U3^,3,<+R1M]CI;HMEY.WRG[W%9IC!6.!'AZ\YNK__.$RQZ#4/*R7D$L/G#
MF!ST0MVX_7;P;K/9,>FD5KC="[BPKSKH(6!7$6$G2V0B6$JD6-\3?UY(4"G7
M/ZGO9?84J4_ZXJO+;MURV:UU$H\93L6M:_EE% ["O$XN@*V6=_2_O]3)[O]P
M<E5GDQ^.CL4"%(39)!+3]\-(?ID%Q<K>T[>E:YI9#@?J'HE*$^4C>X\\5)@(
M,2=4Y>!L1%Y[PI?%$Q3&^(Y-FJ='/'3%',Y-SYN?WHIW>N&L%>.+.NWVCS.C
MJ>D$OOGI2*F,FK-XE;N$[-UY@%4?J_*^P^9>M\YC#AM5/#H_!TCXOS>@PDD:
M"\!N'#I>W@2Q3 IEB>T9D6V!T*H?^-@.<9+)]QEF\@.ZUW.0TD+3O=_@\V$
M!@+<AEG(V4[O]>_517!5,+M#< _];2,/EEUPS_<[NY4+X(]T=CPCELIV:WN2
M+QC(!!,\XAL^@5OM3ACOW<';,XAYSU &/U@L][<RI7[<2@[@)GKNE)@ N/:(
MU\;3^T<_,%7#HD<ND*5[\<-.G=#EC&;:^4KA5FK(-JI>Y3R<$4UCQ;9<L ?^
M.-D=TO^U>TYZ'^X,>.X%X]EP^N9;5NPP\:F0UCND_%&J_UBTB'4X6!8NY$,6
M;NL93>IOQ8;W@JY:;+6ETV_-#GW^AZ['TW!SN25Y94M26UWV-8?2VOI86YT7
MO)V>;%6>:3\]4;C'+8KP1BG&B$=Y/LG>;VS<W=VU,NFW;I+;C?W4'X6W,MN0
MP8U(-P*1BXWM7KN[W=W 9=OM=-N;V[N[[?;F;K=M?=3<W6WRAZW\2[Y\Y8?#
M!Z\\#3Z0OBK8>$_EP^2/>P*90+)2BGP>X.H-B;<<XZ4GL5]2N36(G"WP?BUB
M2:',SNXN\[.+\6RDL[--7^]Z;X<ADO0(C,627>R!6L J$4/U;Y'%E2UH5[="
MT.3GJ^*L]'0FCS<TVDB3G4JL,,,ZN"'\'?OR79D@*=;XE'DJ>/ \AXP#;+4[
M8-R2K/>2K)5V6U\,W7W!V\EAZ%>R*%^/H3N=W5ZGN]GI=]N]G>[.1@!?M7>V
M _FEUVF-\G']L?,,9-Y'+,SM+KBCSRI(C1\L L*-LG.%8LK]74R]SA:F#W;Z
M7PNJ#U3A] RDWL%V0G1#XC^&Y^RJYSP(/MOHN1:;LW7?:??]=VM-4/L]\?VO
MA1MSX?V7IB*?&0:Z:7\=T[X"89-R<P#[^Q\6O5;O!>^8YP;8?UBVL9OX)P#1
MW5YGL]WN;6\$_7Z_O=-S('H1B-Y5C28>!:+__'#TW%6]0YSSV3F?ZZO 7I.G
MTRU)[99DK;3;^F+C_@O>3L[Y_$H6Y=MQ<Z?=;6_W 3=W.MN;6YT7A)NO1F$:
M,%Q6';A-*L>'*9+:/J>O^%<1%]C8H+M#B+?C$*]#O/55/:\)7KDEJ=V2.&=P
M_0%OI]WJ_/5/_]/I]9UOTCF%:S'Q&MRF@-2:\DNG??U"D.G1>!(EU!C5V]<]
MBW0&\6SSWQW=;7G _0L&,K_#+L^+("I=<!YALV/O-)%A%"6Y2T%XL4C6Q<)?
M1RS<3;M+07"H<QGJ[#K0Z4!G?2;^"3(1NKU>I]/9"#8W^_T>>E0[;0=< ^]7
MD<%?O[6\GT4:X0?S[EDT0K\Q#<&JPWOZ9(3OOSD<=*VU1EHW#.6FO6[0]>6%
M@]85N_8Z<%C]]07O&I<E\$H69<:1VNN\%$<J4]'W1+/3?RO>;70V _[+RHFU
MVU:ZJ+J+JJ\/ZG!+XI;$Y9'60[U]"TCL.I#H0&+]%V4>)'8=2'QI:M2!Q+IM
MU=>$2-R2U&Y)UDJ[K2U([+8ZWE]>\(YR(/&5+,HL2.R^%$]B!0MZDR+-"L$E
M]IT=[U/KLG70PN:9]&VGM]EN8%A:-<NL7*XOVFUOF::;(AV(6&;-\R^1G.I^
MF]UVN^M Y_?7RJ\1X71JKH[=DJSUDJR5=EM7T(E):2=GE\XWZ6"G6Y2'+,K_
M?K@X]4[B+!>Q+SW3>HKKQGM[! 5#_76@OPX2N'F<Y)Z83*1(L7,[7GB"ND P
M0=.AR(5W'$;2&TA?%!G<)L\\>EPN;@"&IM+#E,8 Z]SOPGQD[H'HF"_4S[NW
M^N;%ZV.'-FNWXVN^X=V2K/62K)5V6V>T>7GPBT.;-00V+UK1K>NBV.#N2GQ)
MXF0\]8Z^P+<9NA\O_9$<"X-"'>QSL,]A# ?[7M&2K)5V6V?8=[!_ZF!?#1'&
MBU9TZ[HH]\"^ Q'Y1<1![-,P_CP0F70@L"9:TH' ^NU#MR1KO21KI=W6&00>
M'AT[$%A#O/&B%=VZ+LH](/!0#L,XO <#UN)%UE]G.T1:.ZU0<Z7@EF2MEV2M
MM-LZ(]+3_0\.D=80_+QH1;>NBW(/(CT5 QDYAV3=]*.#?_7;@6Y)UGI)UDJ[
MK3/\^WAQY.!?#9'&BU9TZ[HH]\"_CZG,X$(7EJZEFG0HL'X;T2W)6B_)6FFW
M]46!?8< :P@V7K226]=%.4BPZ>!'<;.L=/GM$)^5JTXQ-F#$BF6L?HY@U@=P
M9:X!I#0 ,HSYU_@W/E/ C[%GBVX,DWEHLOWEW4HH"?_%^].?9J'4%*.R>]]K
M]7J]'_>J:Z?77BV".0:^>3E[\-,!2*%,S0*WMC<GN9<E41CHBUGD=NRA5=5S
MW9#@XV;W&7;&<TS,5V^+OY+P<T<AE//ZIE^X=;-GYB_><9'&839:M'9NMN8;
MU?3Z>Z#4 R10@Y\(#RZ'LX 8+O Z/ ^\)(4O_&0\ :TN\B2=>I-(Q(WJ!6DJ
M8O[A"]DKKPT6][9G9F*4EL#K1C+*:HHAC/F]B.[$--M[XVW\P7.V:'O<TZ7I
MZ=HD?G?EH"7&"X._O\G@$Y$7J<R^38(&210\Q71=GOQ\MG_U!'O[J0;TZ>+H
MLD;#>8Y#N=.];S OY*3Y:#%M(L51*O];A"D=%YFAVY1^D89Y*+%OI#_"XT1S
M;G9V>_V&^N%-F,&I [<:@3T2%-'4(VZE +X.,_B>6DC"8P;2PRW$W2/1U!C(
MD8B&V!T2;T0LI.J"'*%"$<./Z'ZBR$=)"N\;N*/L&67I7ME^X#20=:A'I2PS
M' A8?_@6^&TS$M.DR.%&7V2PQS?MM-NM]H_:E(.WB<0DD^\S.1'8352Y\BQ'
MWVV8@<T:A?GTO;YZ@;^/;][OMOK='W'*%CDZ^)K=5N>>*[9:[:U[+IE_T,J^
MIE_O3QF'01#)/]0C_#5@X*FPP.(I=[/G9L_-W@N9O17!&CH8%^CNA\^Q=B\2
MJFNWT+&\P ']A[J6:P7X[G7V/^E<\W2XZ5XPW3 D_.;O;[IOOEV5O/IYOCCZ
M>'KR\]&9=W!^\?'\8O_JY/SLL;JGV^IN?JOZ<2K>S9Z;/3=[+W;V'@_.[&GI
M[, EWY8;8,^X[:&C6[^N0^U0Y/*]=^[GR4"F7J_3\+KM;L\!N'H . ?:OG5N
M/TS?/_OLN@2\<KXWGL-KOO.U8:M:N? WO*>(H#W9Y)R?_;M6T\-XX=>6]TN=
M9NG3V96M/\R^5J$#"M29_"\[B;'S""AQ+\1Z(<KVL7G3SA7WDJ"%0W)NNM=W
MNM<5VCU5BLM5$D\]/)V+.'=J?HTW@M,[;KK7=[J=FK^G)F@4RJ%W]$7Z!14#
MG0^'H2]3I_'7>$\X%>2F>WVGVVG\U7/]]F,:QGXX$9$GC=I/6.V_<WI_C7>&
M4T1NNM=WNIW>OR>=34Y@4#+V#I)TDJ14J._2V5Q*D9L]-WMN]EPZVXL$$"Z=
M[?NO@4MG<^EL+IWM&7*1ZI;.]NO^Y?F9]UO+^WG_XG3_[- E2KE$J;5:$8<1
MW'2[Z7XEH.&I_&J_BBR)Z504:23BP*GZ-=X,3O>XZ5[?Z7:J_B')4L=A+&(_
M%)%+EGH%>\*I(#?=ZSO=3N,_.%EJ:-2^2Y9Z!3O#*2(WW>L[W4[O/VVRU,*^
M)0^.<MP;(/J#)?1;!?1)!_-4U,$O3)*?L!G SE<V _C;QB )IC_]O[]MC/)Q
M]-/_!U!+ P04    "  $@E]7!TB=9[06   K! $ $0   ')G96XM,C R,S Y
M,S N>'-D[3UK<^,VDM_W5^#\)9.ZR*_))!E7G"W9DF=49UM>2Y[9[)<MB(0D
M[E"D I"V=+_^NL&'^ 9)41ZZCJE*8A'=C4<W&N@'@-__OEF9Y)EQ8=C6Y='9
M\>D1899FZX:UN#QZFO3ZD^O1Z.CO?_SM]__J]<C@9G1/[MD+Z6N.\<P&AM!,
M6[B<D7>3NQ_)/Z\>;\E$6[(5)0-;<U?,<DB/+!UG?7%R\O+R<JS/#4O8INM
M=>)8LU<GI-?SB5]S1O$[&5"'D8OST_/WO;/3WONSZ=GIQ<\?+LY_._[U_>GY
M?Y^>7IR>1M#L]98;BZ5#WFD_$L2"NBV+F>:6W!@6M32#FF025/H3&5G:,>F;
M)GE$+$$>F6#\F>G''LV-T"^$UP>'\@5S[NF*B375V.51I"><K4UC@6/%U[(C
M6//IQ_<P@-1QN#%S'79C\]6 S:EK.I='KO672TUC;C =QMAD.#@Q@$@Q,,42
M%[K#>\YVS42LXLV,F\<V7YQ \0D68\WGO=/W,%(!)K/<U7F(%6( X.D)VSC,
M$L;,9#T$8UP.NNB=(^\]=,&=$'E.Q4PBPT?9Q[ .3>\)=Q:O13#M>&$_G_B%
M,008V%A'7M[[C3H]._GGW:TG-P&P:5C?LKL-\.]/L'A&!0O 7=%;4+I.M]HO
MB#5$9T9VJZ$@!@C<M\HRW>\CD-.=K)$__7#B%49!C8(NPD1Q0'C#+FY20^(/
MX-G'CQ]/9.G1'W\C1 JPL5K;W"&>'-_:FN1Q067XJQ?4V,-/O;-S$*AC('9$
MK,P9D-/<D_T:$7"V5B-"L:C;B(!)6/N'O'HSN5JJ1I$G<?A'#_\HK#,EI_4J
MA<GI5>K/TO(5QZ9UZ<I56DO^%J6XG*7SJ@U"IF8X8:8C@B^%PY&M6&HV(5"I
M7O7PJUS5H2;>54LMRW9D7?@I^+A>&];<]K[ -YP=%\$4>61S(I7&!>4:MTU6
MK%I.UMQ>,^X83$25KR2PY&Q^>83*LA?HPW^;='8,>BL 2540G[=8? (HS+S=
M-2_ =0P'D6^Q6!"IYX(2D(3+(P%C;OI3_M7[N>:L:C\!1<#:+[F5W]V'"%3;
M.JVS>=5. XIA&<5='H0P;>NP1LVJ'084S3453+[> 97N,E*?0CG!/YX>1^4V
M*"<.W=B6O=IZK;NV8<__0!?0:P-V9;N?05U!;3N^_7%VBO_ ?CZRM9>(!#%_
M/TG")RBY@NECZP_Y=W(*^,@^2 %B8E1+X\7%+Q/-_Q@,[P$&?0(=EMO^:]O2
M80_.=/@#K"%#A^_Z%35Q_S19,N8(CRU5$!2,.T/&A?20<^/[P?!^,AS@7Y/Q
M[6C0G\*/J_YM__YZ2":?A\/II&-JDTQ]H!S@ELPQH,>5.1S'5K#[O!:[R;M8
M)3]V[-^3_6&I&,^O[14,T1)M[V<V L(K5D8&5"04@O"^I"!,IO"_N^$]",'X
M!HKN'AZ'GP%N]&5(1O?P>]@)0XE5-9MO$\?6OBUM4V=<#/]R#6<;++NEX15L
M_CF#S7G,G4S'U__S>7P[&#Y.?B##?SR-IG]VS&URIE.QO#'MEU*K>#:B@MT?
MZLWJ_N0SN;D=?^W6]8.PN_+Z7H**0A!^V5,0NA6_NF"XJQ7E6]#2QL(RYC!L
MEM/7--NU',-:/ !O-3 K??:7@RU@\L>/'W[^\ &-KEVL!3CNT27VG$0HDQUI
M$M#N&*IDZ TU^!=JNNR.41Q?.2$]_F47*=CU2XI=2(9(.B1*J..-DC>[8>QK
ML!$2LCWC^8W)-C/#%EL!NV"/5:4@%9S[-<6Y""V<;$CM2E*38<2.@148^,B$
MPUW-<3FJ/C!LDWQ+ RC8]5N*73$2!&ET+%*RZ)$],\N%X=?LA=<8CS,9WQ4,
M^9C!$$F#1(AT'%%RY)-MZR^&:?8M?02=MQ88K>\+$3H&BP"*>?3A-,6C@!BA
MEDYVY(A'KV-7);,_ZK(;,(<:9MK4SX!1,.TLQ;0H/>(3))(B\4AV?"O#MV<,
M H&P3YAEV/S>=H*=>TZ9@D_G67P*Z!"/$)&4.O:4L,"SO6;5O&/(EO=I RI"
MXP?B4>E84F+&K%:&(XT76'I MM'6!#1C-VWR 11,^CEC[H3$Y-H4(]=Q2\DM
M+T(PI9N .]$/"FZD?0X>,I'8W> K!W](N07"*AX8GRPI]V,]J:\*-J1]"0$%
M B2(I-$QHX2)8^)&Z8%R9SOEU!)4DTFO@:&34ZI@3MI=X%,BDA2)TNJ8I%[O
MV0)U_2/###H0<7^U3WY5,"7M%/ ID)!$QXL*;IN).Q/L+Q>&8 BFO)-TVB2+
M%=Q)>PAV!(BDT#&GH0A$G4A$R8C$+VDG0OF(!'D7_-5%FZI,Q,Q8Q)2"82F2
MD[((5,'9M*<A)WA!WGD$.R8V$\7(YJ027L'.M$.B.*+1<;61T$8V,_/ %#Q,
M>R_288Z.;_O$.Z+LRBU5<"GMOLB(?71L:B0($N67&DS!N+2GHS@@TO&PJ<A(
ME(VE(!6<3#M+E%&2CIG[ADL23,R'4# O[4S)"YUT/-LGAA+E5VZI@E<9/I:,
M>$K'I_K>XBB7<LH4/$I[6M*>XXY#];V3L7F475;,H5\SG"A)3V7'H,8\):$#
M# _14&LK,.$:_T5E]4Q-/V1Y1_DWV!G(%4P#^PJ/B'YFICZU[RC:6\XVFM7Q
MRG4J!*J\[R;FK_,;]X,@V+2?Y'])I(5R&[QK(]DUDF KB6.3H)WDG=?23E[W
MEU=MR7379.-Y?X7*X'_QZ(!P0%Q"\+B,[-ARM<5(.:>:XU*SCM@>IFJ%]*9=
M5072Z[<0Q3=L(\%&2F&-(*8D-"*]LRV)M+83XD,*<7@3DV=$HRP%7VX-.C-,
MR1(?5^\[(;FQU7]$EJ&KZXH*0WC,*>?S/F3]"G%.>^W*B?/NRBKJN1M0H.?A
M1W/76++R6TNH0^9(_%D2MRU""0_:3&;8Z$"FNYU$S0,A?5V7S:+FR)K;?"6[
M%M6I59$4XI-V)V:+#WKTPUI(I)I.BQU BZ$K%^8A3$(O(C-=LNLEM19L9,&?
M.YTQ#U/5\."?,'3_EC4TP6S7J;46-UNW0OS23M%RVBO>2/SB+!GQVDD,2_Z*
M4)*[SZ"U)-9<WV"%%G>2? !)+A:2X6;--&=J7[%'!H8 K#%3>\(<Q\1;!TQ7
M9Y$8_Y-ES_ "1;0-1M;:=40M\7Z%!BEDOO2YO83,YTIP(+]>XW$7.L-HD-=^
M_.GU@/A=B"5.1#M!O%YT\Z#9B+MR2=^7B$+>JIXV[);Z5Q*,R%IZSQS?8-"\
M:5M5/DK04HA)VMFN%)/X"@OU!J'+H.9.8O:4&&''V3P4CK'"*..38',73,HY
MB[I+E%)3CYY"<M(A@'B-&9(3UDN\B@G6G/2I=,+31(Y0A>6G$FZQ4/R6CCID
M9!-U*\U!61_&!6(E\DYUWXN*M>.>6.38BDV05 A*.IJ0*2B10$*\?%<W.EKE
M<,K-LN@,NH:ER!_IK7_Z9&JG0*L*46F*"AE*^_15,A34'!ZE 3,I*]VQDZ Z
M$I1,;0P9#D!TL>!LX3N7?- \N:E)1R$M68FNZ13*F+C$Z_.4D(?224BS$@+?
MF"'=$1@\&; YXV!(^ @WW%X%H33QU7"6UZYP[!7C.;Z@@]6CD+!R2;J)12UL
MC]P'!RT*,>?0IC".*,@+M(J$S>K$L(X8%N3T>JYD,)&N*>=;6 ]\XSI R9:W
M_0DJ!*MR$G'/=XH+](H'5>]L]A"[DY\F$L:5ME9-7(54I#W*2JGH[*Y742.[
MN$.RI+("49)2"$G:#:P4DFCT(>-\0B<KC<J*GV#DA:,V:[S%]<;F8=K1W@)4
MC[Y"JM)>8[7JB;2#^ TAH((B&5:=L#4B;,6'7:(*!4_$V]Q@.5)5GY!"?-*N
M8_51FJ1>"JOLA*1Y(7GP'K#9HC<$,S,Q7W>-T>DZ@J(B5BPL'],NY3+"$E3Z
MD_3H>(F;8<6=R!Q2K_0UC;M,CR0^[J=><NDI!*?&M8;)Y%^O9A*INA.=?8_T
M*:VEZF@*02A_;V)G(AV,[9&O S9+WEY:&D'!ZK23MX#5T2*LHF-RS64A@WNQ
MU#M9CDY.+()=/H,A<WP;("?AOB&J"G')NA4R5URB*X,6J9Y8 $ ,OP&$^;9-
MEQ._ST%BY2I1#44A!QEO8&0=.>Y6AT;O?DMQ4'[!MRQU/#4(LRCJM<C>1-8C
MHA"'M&<U1QSDY]X55D:BM84.CDXPFA&,('XW7F,K@S!^:9$H1%<(0]J#FB<,
MN[">5\\NW: 3@T.*0>R1J3UE(HN60D!*WE=1+"#QA[(Z@6E88&22CZ')5]$
MZ E:75N)J&DI!";CFE*EP.PJ]8 )5MLIF.\@+_MIFXJ$"R7IE].,2S[VEJ1.
M$QW@_8(23J]:N KYR'*!%KQZT!DXS;Z+H.1Z25@%E]/^S>AK"AU3&UTTDO=E
M53AH4055P?*TGS/C_JV.\8=D?/+$/%[?H6%2J6&ZN+PC#&9?N%9>UD8#%!5B
MDO9O9HI)^ER]K-K+2/4J]V %\:OO1&C_YT&4FJ,.HD(@TH[._$=%.OUQ@(O]
MU'[M"@@*9F>X,5-7 '8\;M2B3# /E*R&X[%@X6&5J^TG9B\X72]!MW-&<RS(
MVH04,I'AS<R0B5UUT4,OLRW954FPSDY*JKRK$GO+1JT(RL,K>)[AH$P\B_/_
M50W\?K(1^@5=KPWH,G[R/UB6[;5>?L-/S/0NQ$+.<.#VO^M>MBFO7)VRC7-E
MVMJW(V+1%0/SOR%J#G3M\DAW> __$A=.4#1RV K[?40$\-XQ'!>[]XG;[OKR
M:#/CIG%A ,@1\?Y>,V[8^M2CYGHWSD!;#=/$"B^/'.X"*0J4\%S2Y=&<FH(=
MG>0/U\CR><1NC>=TVG%?T]R5*W<BT43A8'CJ8GO#X75I95LPEGR[QT@8EH"*
M'?5 ^+@S+\7L\DCC#&97T?C<V]9PM3;M+6,#@S/-L;GTSGF!@CNVFC$>C$8Y
MV*0HZ/:*&M:!Y4#^+NCFXT!ZMU8K6& ,:OJ,D@'4![J5;JEX7RL@M++#D9N=
MY#U+P3UIH(W1D'H$F8UWN )"*SM<SHCUR85<KH84G=;HS+86+>/R [=G7LHH
MOHGF:AH3HIC-11BMY/._&+<?;,-RIDO.8'V";<0-Z&9_YYB=OC5PV?0%2K?>
M?V]LE\='I6&BK1RX).?]W?47VW17K+Q>4**ULO-RG1H)X3)]X-WV("OP)GCQ
M)7V^N@_&HPE*#6\/RF^4DOL#G<V*MP<YO94G>IL8MBJ$WLZHR>4#],=P/H==
MTMCRA"-('A50Z0/,*,-=!:-3 2&V!DFP[[W%CEU''6R5Y8G PLUSMD'2$+'6
MVB.E;[05X2TUD>O-@E':ETIKII+:0$ER&@QMADT5.QLM%Z!U^[7^,S4DZ@V8
M3C1J7D=,26B-$$\69VAVP$]8/8.^UL=_.Q9I[,; ^%XDLZB5^PTTE3? '%3J
M:2,Z6=+*+OB;W_%\N-$,@<D"8^N>.7(A?V1KEVM+L(;#:5@:/-G9M8?XO15S
MQ!#ZRHS%$@-@GCO1O]XYRL22P*WD:W"$>=O7_^,*)\/W4031RBZE\][00MMY
MGE-K1@6$UJTAT9",MT^<N+/_R'O$8568,V@/9XE9J0)N?DZ67B"*MM%L!C8G
MWI*WBEOAL.3;'MO"#709T+>S!D;RL^3.=C<SD]]KB*?N7"RWR&%W)H7\4((:
M7!=V[Z+J&%L)'9I;W$H5@T$2C(R V&R]\,B-:^D)Q:D :F7'0*1@IRB8SKS_
MCZSQ6MH0UN(6?S_B\C:>/PEO>QV1Q&IH;\CD\%U<P,FTEVOG.2Z"::<^#9/!
M(T\R@-V S4:'C&T:F(P;4SB54%JLBQY<#FU-^C:37ULY07U+/F7=,SWH1A%$
M.R7Q_M/M:+4&V'[".$I];R5+Y$XJ==2SSSG>?8B@5]L=B.^_[+]0KGN14N%?
M1N-L=UL6,7:6C$^7U/)A[G$/(\"P\-='?_L63LSOV81&?9!-R-.5*V#'+@2,
MQ<RPY%#X5Y_B56,ZP(+NHI&XO?=@! Q"Y(H5*(-QT./K6% .!H)U[7(><6F_
M<J5O9_?:QPO2=?FT0^BPB<_S(HA6SOC(17=REJ2NK]L]?Y$(,=?!;)W->9/E
M>8](<<K KH#0NL[N0A#)1/E$>D#:K5 #LW7=?P6U]OJ*] UJT3N@:*QMCH_
MK6@B*)]9UDK->6M;BRGCJYPX5= C)=C;81SZHO+R)KTT0>$]/1UU7I5$:,LH
MJ!,'?*VGVI]>Y>U/_?</T($'2A&TI_2L)U?7@U?3.O5\QQQFV<^T/TOFZ22_
MMU(=J#SO<>]#.> 6^QUNJ";7GV#W-]P8#L[DQ'Y8"=9*7A;J+4OWO:')]/+@
MVF79OU(JL"RIMZ,<R^X3X[.A(E:+IT7<H2";/W8='&X=FAEZ@Q10C;HA&DZ%
MBIVAS.9B!DB+6=9?4TWJIH0EG_S<2DT5.:8@<\G0!8KYO3!AX]TI =C.#N);
MS-Q=I5)F,@I:V8$KPYZ;;!-O?.)C*QN># 05G2DI ]K*3N;GG85/JX8IB>I<
MM2R<-[AV9^:@IM5\#EB+5?T=M=PY]5\F1%?5<+.F%F8A)P^3J '?F#C'MI2X
MXQ!J<<[">3/B/+4=:DXYU9D?UA6[I^$>[2TU90]]LR3R:EQ<$/:ETDHIR3H:
ME9$ &"EK9[#U>FFP^>XHXW@^-[3D-JX8II7LJ64RYB]7C9%[,U-_9,U-W]FN
MN_+JE;[FC.?3%WNZM%T!5E9POLU.YH=61FRE!$4:W _:G#X;J()J9=>"K.3^
M,^-TD9G!5 C23DUVN$!13I;;*U;X9M2&[SF?V@]^3C\N&[8E+>?XS"D#V<K9
M$\V:]B.'-PQ#4>:4;OPKUJ^8Q>9&*"F54)J?78UXK^YM2X/U+7C2PDLVCIQ;
MR2IL6&P/F=:9,9EC,48\8KCRDAQE!IW0N/U2H G*(+^AX4G<$(R[=3E_2TST
M6JBMG/DY@8:2B=_ET5K9^2<_W<_7V_$NYA2VLB/1RWC&<WDV!-9@G C1L+L*
MJC5S5[DD-[E-\1>O:$'J';Q#;(_*U=N675*9(SS^(;JO8$'"IF"><\8N6=S*
M"?7%1H,/O1UH'N0>.@\Z5QJ\G6:&O]4Q A:]^"Q*;(4RRM^.RBAZYK(@K[$0
MN(9+^\!1L5*G5]+=K8K6NHY#:^$;1\_4@*TYT[P+KA*AVV*@5BJB(DG,B;_D
M K8X E,[K4UYIN.+W,3AZ8\-1H;Q9A#\%,FK2/B%/D&=S@"$).4Q;7DC,]86
MV9SOO+@\S&%SE' QQK^U<N+%W>.!8_RKX< R.+;8GXSR6!PLVZU>!J\M6SSE
M$NH?8KDU$RD7Z>^MY&CI-TW3*E6)D.QP:ZY?FBQ!UDJDHZOAVB*F:DLDH2OC
M676)F\?F@9G_P+B\C!D?1P\>C HW2$U2C*W"K4CB\^=O*I4J_;V5\[K@1:?4
M3K<<;.NVMXK+X.ZCUQ2H(=LRD]77"A:$J LN#:N,UI8!4:NVI)MY=YD\=OJ&
M:LQ[-R8>D2H#_W;&H(B]]=(=WGA60WA%3L95@5EEK5-O.7N.1,BA&*B52U-D
M"R"-PHQ'*1-1ARH8K>SR%,J?UO* RH!ILJ7GI^>GB1238J!6=BP=\\O<X*D"
MA85(K>SX+:R88POUY^YVWMTIUJRRM^,5+G&-&MA[?[*@:'<'31W,MS,NK^[J
M\DRJ[^9I"ZIOGW$FDXQ7E']+:M#$YU:JCL T]@SEX+)O>; M]49GXJ!S+=06
M[FQR[<V8]UX-UV+G?7"8%P_QECSW6PC:2E&^ YZP:\I->V*L_*>S$H=#"B"^
M:Y>\M[:$M@2%\<?_ 5!+ P04    "  $@E]7KW<_WE00  #.X@  %0   ')G
M96XM,C R,S Y,S!?8V%L+GAM;.U=;7/CMA'^GE^ANE^2:>67NR2M;W+)R&]7
MS_@LC^5KTD\9FH0L)!2A J0M]==W 9(27P 0M&0#<#+3Z3DB%MQG%]A=[ +@
M#S\MY_'@$5&&2?)Q[VC_<&^ DI!$.'GXN/=E,AQ-3B\O]W[Z\:L?_C(<#LXN
M+J\'U^AI, I3_(C., MCPC**!E]//G\S^.7D]FIPA9/?[P.&!F<DS.8H20?#
MP2Q-%Q\.#IZ>GO:C*4X8B;,47LCV0S(_& R'1?>G% 7\]\%9D*+!AW>'[]X/
MCPZ'[X_NC@X_?/O=AW?'^T>'WQ_^[?#PP^%AA8PL5A0_S-+!U^$W TX%[TX2
M%,>KP05.@B3$03R8E"_]^^ R"?<'HS@>W'(J-KA%#-%'%.WG?<: X$-<PE@R
M_(&%,S0/KD@HV/NX5\&SO*?Q/J$/!^\.#]\?K*F4+?A_#<MF0_[3\.@=0-Q?
MLFAO -I(F'BWP4O*YLM6^Z?WHO71\?'Q@7BZ;LJPK"%T>W3PR^>KB< Y! VE
M(#6T]^-7@T$N#DIB=(NF _[OE]O+6B<4+6+\P(<-70B-<A4<'K\_/$B#)4G(
M?'7 R0XF*:B5CXA3DD0H82B"/V LX A^CTZ"F+]S,D,H9<"O>.V,HNG'/0J=
M#\M.N:#^^HRNTM4"?=QC>+Z(T=[!:R);/V7CZ2F9+RB:01N8/S .R1QMA]6P
M<T?0!VQV$9.G+?6K[?(ED6X,WB="HB<<QZ,DNDQ@LCS@^QB-&(,!-YH3FN+_
M"5-QOEQP[B\(+7Y%K>9G* UPW"60EW_SZ\A--4US7KC]B;(8C:>7R2/HEU",
M>@MHZU>X((D;2A:(IJL;>)""JL__F^$%'_*[E8;A:UR0R$9QHS"D&8JN<'"/
M8YR^X!#I>M.KR04BM)1/W E*,*'7)$5LPV7Y/( &_!',<T012PL3D+/<:7)?
MZGVO(Z/S@"80L[(;1">S@$+/(8&X+\;"&(ZG)P'#(0SP,PQ1('@0WH;;RRSI
M;X%W]RZ5;,(@#K-8=,?#Z5IKM$P1^,2H[(,+XL7#,<Z:A+D1#6N\!30LV8(_
M6YS5P]BBQ0'+YG/1VQ #/R7]E)+YQ[V,#1^"8/%K[K!.,TJ!W[7TR*8!#P-
MY/P?;L,>@YB'!Z/T-*!T!<KZ=Q!G$ P1&B'Z<0]6.4^(Q_ZPY-D;9 S8) O.
M0A#G:K")M6)M -$D)>'O,Q(#WXPC2U<R^+)6GF'5*!?,L)@\-\&*VYQU2Q\0
MYB-7BJH^IOT!<PW63JTL94AQC3Q!61F4>JAG:(K@8707+ 'H.)TAJJ#U#+8,
MK,?(S&SH#2W4*9I[Y# ZG>._4!S=D<]!FE' /D$A_[=J<@N41RZC?(Y;/"7S
M.4Y%IH '!R1)(12 R$@,<<] :_0[!H,;<&A7*&"HI%EYI=XN/RFQ.1[@T?N/
M9D(&/.3Y,HPSGGTOTSQ^H#5VF8JAZIMVS7VE5Y/0W*J21.(EG<;6Z27+508L
MYQ$L('ER Z5-];US&>)S7&1M)'L&4J/,DXSA!#$&8_4>)Z+/M?OG"0^&(V&(
M>()%X2Z=EH*)>VFY$*<1&;N09ZA6XEZ<EH79U!U%$<XYO@EP=)F<!@N<!G'%
M//N!MM,REY6:536%\-YE2,9YK49YH6F#G 9I8H/*%$E>C>:)DC+2]0.C>6#;
MG?UQ&JBAR0G#;,Y90WFZ2[+CX(HPKM[Q%)3M!_1.^W-#T0(L;%'?*E-]\OSM
MMRXC-3-+E?J?J/PITNY.(S6Q3?6UJ-@+-IY^8?EBW ^89K/VEA<=$Q25A<O*
M+ ;[C$/L"5HCI6ZFIL0$?V<*+R9U3#'?^T=HO4C,03% )1!- W8O8!6<B++K
M 8I35OXBZLFBEJRU/'%PCV*5=;+ I&%I5<J\&:T%4*9+Y0:>3C(+4(R9=X-=
MM0]2R]KBZ%?5GN5S5=[8FF71FA1[;+4MN)3!2C,+K.KKV%*VM21VIUJGR.5M
M+3!M7E27XC FMZN/;BW8&?.2$KABJ+=;6F"XL[(M9;Z+RD:0I:M4RT,K#84%
M %TU:"F&#B(+,,Q*LE(P1J3N:*;3DG;369HG]=JC<G+4FEF,'.7U1&W\*"6Q
M &&;*IH4X!8=6H#?,>%M3NHMBV"[4HY=8V!2 )//LVY"*[ZG6N92^)A*$SLV
M356Q4ADT17N+*PM9+4J[EI 0V/#C?9=";BU^>I>.5 .J5R]V%E'=U2+5HJJ3
MTDK,I:\'*2(P+9'U.+A5[C&(@9LT%D"8E'*D2 P(;=DTPZ2@O&U^:D[<B= \
M-N?4>;JN<_JV:VL2GIJFN%5F4QC?"T(1?DCRJ1ZN[FB0L" 4:))(_%>!+?HM
M8VF1'ZWO%W#ZO$4%*?R>A\@9S*G"6(#23] 49+ .&Q [7Z8T &P05M/5)?0L
MAC!0PDOA#0_E$5IMF7KS7C_D)&5<5IV&F#9#I2PI#)6?<3H[A;$!5!2(\QP*
MG_KPO\B;<7)*F,C-%?Y<"IZW&4_Y2E(4%!%]Q"%B$Q)'?F"$84SJ:B[0JO;Q
MY1-^;6 \08E2_1A^49/@@X1ZNH^&0'TX/_#*5E\SL7R0EJ'M;YO(-KBA>^A,
M+#N_5 SZY-M?SL##Q414@KU28D_C7KL%Q!--&EIVF,X%KA.4P'))>I[+07@F
M W6"A#'Z!,!HP*^5&D5SG&"6<L4_MLR.TT<)C$8LO]OEU^I=6>/I&;I/+QG+
M^)4G7&8RM)ZJUSRK/Z*P-GO(%ZFG,_[G99)?6R/N_-$6 H[\V.K=RZ*)-6ZW
M'_[>K3VE!I%8NUBJI+"5$WJ!U((ZJ;3[EUFI'KUX?-HJ1KW<&VWFA]L!@2HK
M7&EI)1?\C,2)(CG<OR<KIDWN[EKVK-',$JNJO(Z2:06!!?8[_62#>W5[2W7T
M5II)64YOMK0A;=DBI"GA6ALKUD:[GE78%1V-G>U]]46J8EC46UGSYI)EI\83
MMUO;.(UBN)J4XC D[@^K?9VGT2*PQJ0)A=,[P;9<WTDU]EIOM[4.Z>L(.XB\
MK%:O;UBWOGI'*6?FAI)'&"/1R>H+XYNSUN&X^"J%\E(F><W![:H*H&V<G027
MFE(<@HZ*LY7U'RHM;Q#%A.]=HWSORAG*_UW'\N?+4,S"6]#T^72*0FD9(G\R
MGE9;CY.M^%IS<(;9@K @_D1)MA#W);,P7T2B:+.&]$-3BJ&9!YB=0_,F6(G)
M=D=&(0B*HM*LHGPGFQ!I_D1:%W8P-:D02/$]EDZ!4!(B%(G$@MB/.Q; V/D2
MT1 SN13<$X+]^=M'#5Z4I+:;9]5A!5(&\9>GP,93U:DPKP5C.M\* W2+Q([
M.P)K"9X!XJ?%@?B"Y#?=GP0B3ICS8$8PY$D9;+O H1[SKR4JTDQ^E,6<M4/2
M>>N#1'?L[R=DFC[!!/.D[KB=L;E%BP+_YELB]S'BBVF_\1O:DS.TH"C,OQ;"
M<QP5\^)'%=59<R)5@ \2W;$Y45Y$(9.&/_.K7S #04M77DD7!GLIH><.F.;9
M==E]8/Y(X1F+S#*+*PYGM*Y/=?I6M-T,!9@M57F(/*8N.OO>QX'1X:!%AI]O
M2 #2L@94?D:S@/V/-PC;UDZQ8P]GE:$HNU;+3F>MMHUN&X>F51MG?4RG&,J@
MK +EAD2Z>=_+\,(0?CNX;U]LLI&$ER'&LR51^>KL1@1OT9FJ15 <<R\-A?2X
M^T8V;]'CBD"C%$RT%HS9A<1'_WR#$E&/%C$H-M2-T7'\AY)%XW[13;;L#<<3
M4BDT+I79".(-!Q62J2&_H6TC#1]3Z-L9BLW-$-+A89P$?+6-GSU%T-X5:MK!
MG_M:%3NUK22S)?>DOR(3%L3LPD8BJ>@=8,P=RZ-)&II9'ED'-N[@ZK6A2@JP
M5Q?N:%"3^S;3H*P#.]>O=^T DZNMD\XV&/-]1]T C?NR. ?[[RG2SL?>W=FX
MZU"[8T@*3TOB@@7=;%$Q,Y?K]E;.*FEVF$C9UU%8N:I4LT5$"D!'X<+PT6Q)
M,!M/Z@[LP7ON%@,=XF?VZ8*.V[L(S%3;HK/LHA6; 3K=L9S.HF:,B_I:/9GV
MLK-C>8H2?(U)3<,_#^&]G4-XO4)$=P+ SB*XPH?KJ2P>@I14LJ40U.WM'*(V
MJ$-+<1B1.@&I5E VQ%*E<0*$64G8$)U19SMS5KW+N&TWUK<+)U0FK\L:JDA*
M[ 2L5HFUIWDHZ5P!TZJ4FN-IDCH!25GS-!UY"GHWP&E*F'UFEKP+=RX?X'60
MF+",HO(;2F"=FZO :@JCL.&P$BE^1:WF9_P#!['U.PI@;0X/K_!CF\/*/435
M2K:&0B*":U#"W1.*']%GB-=GGAR/?VFI_ <%].Z)^'%V\%6$ 38*^7'VZ37$
M<4$RZL=ICE>1!K1=2^.[/[(T1M,4T99('+O1U4P(C<B@@\@M&$9^KB],DTZ=
M%\/:L>T ?=F7'Z!S![8KV*(W+X#GKFI'N$5G?L 6!GA7L'EGSL-N.)\=8*_W
MZ.)ZKWK)W$D0\VK99(90FJ_>)N$,15F,QM-*AM*1A9WLZZS-CQN)Y[?!TV>
M1W$0YSO%^"VH]!%YLE0SQODSH;_S9"L)$5, =7HWOC%0/@<9#$QQ.;,<J/%Z
M\_5N0';\2\(FTT7/N)K0)AS=K-#CT5#:!*0;_7I &DK_7)-R^Y$C[DG)G\*Z
M*=M_HMY<C]J%H8WZ*D@\N3JRKSYKW_/=; 6$OV,DV1/8?4.0VS?Z]5?]28;%
M1F'^>87+^8*2QWP;3'V\.QVQ/&.\\Z(0WR&M1NQTJKP_XL]!.,,)HBNU37,Z
M&]X?\45&88T(#@Q:7^ E_ZNA8J<3WOT!GP8+G 8Q+P+R?5X9Q(#E9O,Z;J=3
MV\_ #0%*2C/Q!2H1*#Z IANJ-DY=^P%922'*W+);F5Q8?IGX[O8V8C6)2Q!J
MJC(%D1-9@)''>U)FQ2,;9X-V%JA)8>VL>RN[J+4AFA2OGL;&D-.$7/*!J":P
MP+XN?I*RKR&PD8%7!T/R_+JRO96K"+H"&RF&3C(KW[_3Q"IR%!H*EQQ@$7GT
M<X YD7]9KTU!IKT?U)'$5YNQ_(.M\L_9S!<Q62%4'"*6$?F0'.J%N6A<^0IK
M$ZO328]>6,L]_\4'39M G<YU] *:'V504_1-=;Q:[*N'V YF%>UMW&#3;3ND
M(+KI[&E"9A1TFI"TMWBZKCG+I9PK&MLZ2]=W"G00.1I2E/<G3%""";TF*6*;
M4*)\SL_)\$>-SZWF<87]KPVVV+I7;!-H-3M?EM_+EGW:P^G(PA"TT2>1C,.*
MUZIH*Z'IO_]KZQ(0\Y%EBD)._E8NR'',#)X'-.&)J1N4WTQTBT("+,>X@' 2
M,!R*2^'BC']RE;=A^6%\5]96/XOIBZ(1V.O@ 5UG\WM$:_R.LY2E02+&5/1;
MEG],768QI%V-IWDOFYOTZM_=<-I4*A"IQ%,52GYY14T$8C34FK]Q&6P]QGQ8
MO.YP HFCGOQA$!>WR^0&(X69<Y^E/)BZ(WEHQ7#Y<7+)5RR=7@/O0%YB;FFM
MC>B/?TZ^N/GSB[C+!D5@J*>$SD4*C)NA+PF6?PG)A6AF2TDUG.MS>W,%N-*1
MF*-5=>$.Q"ZK:H92V<ONKF_J<&PU;DTH;)W-W\;:*D+R[7K=F8IV:1_;ZMQA
M[]K OOB=_]]]P-"/_P=02P,$%     @ !()?5Q%[BZKL2P  .]8% !4   !R
M9V5N+3(P,C,P.3,P7V1E9BYX;6SM?5MSXSB6YOO^"F_NRTSL9F56U71/5\74
M3,AIN\813LMA*[MFYJ6")B&)712IYL6V^M<OP(O$"ZXD2!S(C.A+9@H <3X
MYQR<&_[M/]YVP<4+BA,_"G_Y\/UWGS]<H-"-/#_<_/+AV]/'Q=.7V]L/__'O
M_^O?_O?'CQ=7-[?W%_?H]6+AIOX+NO(3-XB2+$87__3T]9\O_NOR\>[BS@__
M>'82='$5N=D.A>G%QXMMFNY__O3I]?7U.V_MATD49"G^8/*=&^T^77S\6 [_
M)48.^?>+*R=%%S__\/F''S]^__GCC]^OOO_\\[_\Z><?_O+=7W[Z\?/__?SY
MY\^?:]VB_2'V-]OTXI_<?[X@O?"WPQ %P>'BQ@^=T/6=X.*I^NC_N[@-W>\N
M%D%P\4AZ)1>/*$'Q"_*^*\8,, 4_!Q49;XG_<^)NT<ZYB]Q\>K]\J-'S]AP'
MWT7QYM,/GS__^.G8B]F"_.UCU>PC^:>/W_^ 2?SN+?$^7.#5")/\VQ(?J9J3
M7[WTV*'>^$^?BA^/33M#O_Z8M_W^IY]^^I3_>FR:^+2&>-#O/_W7U[NG')*/
M>#%3###Z\.__Z^*B0,Z)W3@*T"-:7Y1__/9XVYV='Z:?/'_WJ6SSR0D"_.E\
MA&V,UDSZ*Y((=G\BJ/V?6L_TL$>_?$C\W3Y 'SX-GA/^,PK)T?CHH;63!6G/
M&3+'&6^^T<[QP^'3;0RC>[;YX!]W:/>,XKY3I8VA>9Y;/%SL9L_HXQ&8GK/E
MC,2:<S7A]FS)QV*T#_P-X=?Q/F>EA/=]QASR4^J\16&T.WS*"7A*,3\EK/A+
M%'KXL\C#?\!,V/?POWN73D!.\-,6H31I$A;CP3]6@^84]!@*"&4/3HS;;5'J
MNTZ@D4SJN.9H/OZ:+-=?HMT^1ENRT5X0%GK1#@TC7'+P,:EG3><IC=P_ME'@
M85WF^N^9GQY$I*J/!&15G61[$T2O \\J=TA@E&H\N_+CCXG!27->N'B+)3[1
M*Y?KFP"]/?M1<DCP@5HYSP$2+K+Z2-/0=>/X\5^=($-?D4/^GD/^E.UV3GPH
MF(<3'A*R N2_Y)R]. %ILPB]KT[\!TK)I)^0F\68))3\)PJ\5?352<G?#U?X
M9U^X$\S,QB2^6"GWL@#A]:_N/8LD03D9QW^Y\YUG/\C)*/MZB_0XW#)</!(R
M8WP#O'02/RF(4]B'IF8V)NXTFA:>EQ\V)[@-UU&\R^^&<ANSYW @=A9>@PBO
M5N [!:=9;=&7K1-NL Z _WA:+7RJPA0O5<&($Q^+T[S'M1.'49;J.<'CS@H$
MWOP)7[_MD9NNHDL\(<RU\(E914\H30.BD@69AY[\3>BOL5P+TV]A]$P,'825
MW8;[+$TT+\)T4S4MFP><?4W#FT:@=J3N45KR<K=85WU R']E<CR2J#G5ZR3U
M=T3#_):@=89EV1H1V581, "305^:!I='E*1QYA)U*-P\X-NQE@/29U1#]!YU
MR<8ON9D\UV<N#RL\,<(B$V71I_%CIM$IYWAX1 '9P*NHTU0?.*K?F@J;%Q1F
MB.@K6-J1_7N<,&[D;#8QVI0Z3-E4'9%A7Y@&AU^CR'OU@P!SKMLPQ9J:CT5]
MP> +Q0USNB].'!_P6I42H.JB"HBV3XV)#&>2 WCIL%&-[X23:MG^1>,>D/V(
M<306NRA._7\4.C56IL,$W41Q^:^HTUPC1(.^/ UN+/M\,9?Z&F.6ET8Q%I.J
M  W^! 0D'N)HC^+T0.1?BI>:V+KVY!ZG%PW)ST! Y+1P"]>-,^35S%!C;1'1
MET;VH+S@I?%S@V;H1_%]E*(A0J;W@--36?O7*_0LN>=[##6N_Z3MGQJP=KT&
MF^;4=J>6_PN)?/&(Q1Y+H;I 4CVJ@X8WAD"ER2_W9&[5%4<#[3(# Z.ZX;4;
M#0+.5XSCD=]H?3=W:^)&W_!U;VQP^GUR7$Z_V_GIKO36'6W0KC]0J T9=4QZ
MBUB+E?,VB#ZU4:;9Z<11@%%.'E#\M,6;28L1L<>@9JAMN["(C]/%>^_*#S)R
MW$@;<A/+0O6[G;YOC8E-::G#?"0]K&('"V WMW\/V <#AAQ5AT,;PEH>T9Y<
MH</-$ U.?:B)Y%9K8GCON?COS@8=#8^7AU]1M(F=_1;OOA@YRG)JZ"=&7>/L
M.4%_S_!\KE^&A0NHC\2BRT-KO[ )W^&_-AJCMQ2%'O*J(0@-HT>;DIE5<PLB
MMS&A@(3;1Y3 X*0*UET[R7,>;)LE'S>.L\]G] D%:5+]2XYCCF'Y#[\?9X<!
M0+?XC\?XD<!Y1L$O'S@-/QF<;A[#)9IJT<C -&N&C"]93-3 Q3/6$S&S94R9
MT\' ]!>NFXNZ!^= $"QGQ)@ZH[&):1<^#"G Z6T-3)H$V!&-NA5GES8\, PB
MY/H:6PFI)3")/<7:PY\RIX.!Z3_@81#>P,75D[=1:"W-LD6\;971E^X^D+0$
MN=]MHI=/'O(+JO ?3L3@O_Q^AS9.<(WOP/BC;WY;9-):C#ZEXEM7C02EVGP:
M/T.:S.]5"IB!_;C<YR%YX>8..0FJMM>!+^\$G0R0T8R^/D5E\^D0]3+"T!A>
MLGO$HH+;Q80XCW:[*!0RY$XS U.]*F7"RGG#P"W3+8IK'/8^"EWN_I'N;H"T
MRRS!MY0DP3 _^V%^(60$XTH>^@$#&M3?'Y&+_#QH&)\&.2V>VL4 ">T8"CR;
MZS<2%HTAKR(S&*1(=36Q*D<[Q8/C>R3&:N^G3E!C!:RU$7>$(SR%?$/<S\R)
M:04@"(\+H[V1LU($V!S88K+1Q, 4!4?6Z+%TW6R7Y6;Q7(A1$GGOHH1PD>4:
MRSKVAE :Q0ZA*#S,P\8THI\=PU3RL!4I$Y>@DYFK_Q[+@C(8H]*_&D8MMBE
MV-.@,GKTPQYEMT#]I'0P,/U'XFX(D5<Y%FOL $_4=WT6&1(=3<AVU<L +/5?
M6HS#D-\RQ];X 6VJ;7FEJ.7Z6U+HV%*J7KL/"(.OM*'7\#X6GD PAZ\F3^38
M1J>M6:3%^)KC$4) (6#)"17C6,-8/8QAS448HO>DI]>D2<HI(F(1-XER8O?#
M113CCK]\^!Y_*Z_E]3.)/$'>+Q_2.+=UEO^(5Q"]I==![H7_Y4-2Q*54$RP+
MB2G5P%O'T8X;C%#--6+& 5SL8S\BMNY?/OSPX2)+\ 2B?6%7Z8/!YPX&:R=(
MD#*1U))M37+%X01ULEG>>VO)Y_KUZY1+^M(M!X*[]G2HK*58[".N4T]UB%M+
MNZJWO(X$CV/ !(13"Y+!^QLA8(1XJF<>)K526U]&QK59 E!R&154"XHY$175
MLC8#"L 3V:QJVXO*8UR$9FJ[JAL0M444C&$M#-+JBS".PW((^**;%_IA+>%J
M4KL;/&(MX4.4%_G %&OAD1/N\B#J!>('J#)B2%R/M1!)RP]^V(_E]/,(EPL6
MLA8 ->XI$V9D+11#Q(I$P))>7'Z$RD8YT4[6(B#-)9O14I;3RR-T+,XW(9&*
MG$\UDLM:7(:PP8%A8'HQ^Q>H+%(4)V8M#-)\4BK$S'(89&ZAM(@T:\E68Q4R
M46W60C%(E9S,)O$GJ QR?.5Q0M+EK]ACLK_)"9:_+77B_:RE7.V@TZ)LK"5=
MDT-Y/&;W9U '@![':"W%FE9?-P+_"FG-QU[N"8D=LMS<"$Z]B/P%WO);3.*0
M19_.O?23'8"(XVU%L/S;IQ8J=_BO8*N/-5]]G$N1P2M%!K P3:_X^B"(7LF^
MNXGBJRA[3M=9T/5="O*AE,: 5/#&?*4H?-"7<;XSO3S,I*J"RH!:LK-QLLHJ
MK5FZQ4SY'R?>R26GTPD(&;=)DBF14'8 ,OUEEB:I$Q('O (-]5YF:_<H'A&9
MGF8)DCP<O!X0". >"U9K"!,7'PANESE':TY.L# Y04W1 XH&Y-P%<"&KLIJF
MM1%H?6#H"E]K(T_ZDU^);FL=QOU);PA_:]U'<O1+*='6.E&4,1C[Z$_H4>A)
M^SCG?D*C>D^ZE0X]>$OQ\=>$O*/=B:N<S<4 S<6]J_<( F<?R.LR^'BF:>P_
M9RF9ZBHJO >""NZZ1@<&#+[>('\3%A<9M_ZPTB+T\K\%>4#MPOM;EJ1E5B.O
MFN1('S, 6^>Y,?X&838',/7\43#)>1=M=4TZB=/:A/'?3I/%?R&YLU[FYK[Z
M)Q2_^"Y*J)X(?ELS]=[)9+XVA&^WP'NMS>Q *^)R\[>\1 ^L=)J]=S?8;XB$
M,2)O\8)B9X/N,[*GENN.OB; 57D8P*3RF)K:&.;.P0U6UTF0$L'Z-S_=?L%R
M#PO+&,O,(@>4Q/7@_WAL@=MGI&FY.[Y)%_R:PI:8S6P20$8?@B'ZUCV^#%5!
MSX6Z5>6^2"BUXLZ&"L,7*F Q)7Y]^'9+(VZS)-\9)78B <=L;FCJRS7)N:QO
M[:<H8'LKF1T *+OER[>2ZF[5VH0,B Y.D!ZX.F2S#1QIW'A>6.PA5AW%S+,M
M",\B+4\DD]LT6QE1'1+DQ"XI%WF%97\0Y<6&^-/F]S%9D_MD'6#)*$I+]0EW
MG^(E__+[8D=,-O\HW\Z^0L\IL?D2OR_A<:T9R?0P89Y#04"JA: 0 Q7@%5YX
M.S_TB3Q)_1?$WQB2G<$I-KT4&MA/ERSBV,'_FENJOVS)'V_#XN%V8K?FI[E_
MS\!CJJ\;X=='LV)Y]?'##,^RY!=XHI=H'<7HF 2-DNLWO*VC&$L8)S[DYG22
M+T,N35%^"BKFSN3]XWW1 ("J9PO4L6KKSY)JMKF-BK=#.8E+S&O7S%=56*U-
M;!"4"J5SLXV9<,6VJT'@H>#UF(,5H8?O:?;R==)F1_"368NUR -6!X_A<K*.
M=BFC8*O\:]T3!)/@.0JX%]?L>JN $@PYT'?"5>WK):NON:+[R5JL6)Y8ROY7
M\U(!181[1$3>*@**0#* )YM6V7\PW6/5^I]:HY3VH+7K<7:<5-;B(/)@-4-&
MV2XC:]-$AJB[1Z>3==0K*[PMMQ5,@C4HO&S>")-DC?'@+$9@+>$C*H9L3ZBU
M: V1B"TGJK48J$A#@4?VS!,&J:Y<:VE6W_M2CF1K\5 Y![*>Z#-/(97=0M;"
MT%\^B)SZUD*B<DPF"PDX\WSE42, K,6N_^&<[%Q.B(:J4:,94W#F">_,R(0S
M3W)O!3:<>5H[VZQUYGGMZI=^S;=5</Y,;<$3FH$": +C1!594!&!5?^ 4@IX
M+G]P'N4/BN4D&S<*\3RH66S\MF:+#7+38+KM3&Z$%GP)):]1KH^-V\1DLB.M
MDCD#]DY#@['_"Q=/(2G$(/ECC! 7=W$_;0DPJSA#W_;YS><*N?G1PHT^4P^C
M1 <#(*_PV,OUPBMD,)>+4)N:J")>%)+$JN<344&=V$N^[8FL)DA^_C.7!KF^
M)H@Z1KZ28-E[]'J:Z4.,59,L= LMA,,MU<:P;[.9Y)TTIL)>"59K(!/7PD5-
MK@;CJ6O^T>?V,2&.);-_=>3WLA(X7S D'KFBL456IXT9EB]ZX%?$]B7[SXE"
M]$FV7P3EI]W3&YM2>8M"E%=93 0ABOVHJ$I:O/2;Y"[G;Z&?LB\A*F/ (;+@
M&P.I9 T"A\Q\':JD&5*[<D>L\;D'J\>",@:"0VZQ(#KHY8YD5@5^1#FO7D4K
MYXV$S).[*)XWUFJ5"!\RHC&%@&@G>%K#*.\U%)Q-GA_%FN;9AS4WNL,AK:P+
MW9LV2G]MZJ! TM$")HB(C[+TP3G4\W+K^N/P0<>F[RCCM!*H,JI9;KN*&'>C
MG(3G-I]X1,7>0V54=T'N(W*C3>&8R9=6S)+'^2S,VPDK"5JQ// 87P*Z]W+Z
M!FRBHO]<D0!ZWA37H\*HLP\[6YR?*ZGD#FL$HM"! H\!+7%2+PC0LR@U9%-)
M @:3?FUQ)7V>8@9+LK1A_I@E(? V6HL$SRW4>%5.SO$'% <IJ=#+#5C'B(XE
M>$AX0F(43*#+#+GM(O!*TM(F..P&/!*\7:(3BK$VQY39^+)JM<"5"A, C1J5
M(G>!B8<^#>N,\K#5%:RN.]S:Q%/Y\R_O6H<)AD9>P)0A,"FW(Z-GPC12Z4W/
MBF:PEG*%^[-\-(2U:8N#T&"&39QY.F.?\(HSSW3L%8)QYOF0@Z(TSCQELE\
MAUY0?@('BG2(Q[GGCRI$A)QKAJBN,!/-^(#1R+6%J6@&")PJ.W[XBF8$P:F_
MHT2M: 8-G)*L$+EB09[[D6;,2CQ2PL1C9;Y_<9+M31"])G/"^YDDO.,3'B/,
M&Z]0\?^WX;$28;F/!6]P*@P @KS2KH]O+2[R7SAK(]75=-0<D5>AZP>H8;M;
M1>2@/L31"U8,O,O#-WRD:^NR<%.?F+B%[ZN.\BD#D%TA+-)<OQ!7H5<O,\F@
MG-?#3&Z8GA7M,="<"J>T)C=^Z.!C,GQ-> ,9(!=/ST7(RZL$YC>39:[&)-=O
M*';]A/E4L+C?0&(2Y'ZWB5X^><@OZ,!_.$V?\VQ+.5%:BW-*T-:7-W$3H+=G
M/TH."3=3F-9L]#5NOKW36>#&SW"81?'VA09FP1O(!+,H[ _D<E3LQ6J7HJ)"
M&B&A_(7)-U2&,*'?9_M]$?SO!-6UJ,P&$*VA5%<3R=VDTM]RC7<4>8HH73X7
MWM';\/K-S>OFWD3Q45.X(SKQL4XN@](A(P+AP594]^C>50A#"/&'?.:KKOP^
M)BXVC>KO1_4G#W1F75!X70SR/4V)R[V'>W>501I:IA,@?&?[ZJ09,;PMU_^)
M HQ=]?<GY)+_9Q^,?F.932UF/5W>: *",3W$:._XWA5:HQB+[JJB=EA8GW,Q
M(<^QI 8SE<*OE*0/(@W_$:-YJ$R]>>1+ZC\'B#S$P1+PG!X0],ZG:)V^8GAE
ME<QC>WV7)L>/<U<2\[&!TF=WXO(UA8)ZOQHVHC;*JN/H=2V_N2K74OYHI*@.
M8<1V6/ 6M0?H1;W@7$$IIK_!MD.#1Q_K1*(W/2B&-3Y[Z#FFB;JTZS5R\8&I
MKE>/^/@O0[)JY+\D+O8%*S2Y1HFOF;Z+F4-^CPZ]YC_46AZ?I[WRDWV4.,&O
M<93MR2-=?N(6KX4@[_18" -) !.#(([PV<$32@\/@1.FY)$,_*][2D&1'@.
M4.YRM>O$$-24.6IG@U: T5\6XEH5QOZZX4M:]; ;F>JQH(/$A8S>ST31]2&\
MJP@VZAZ!DJ/5N63!.1G(3#P)""ST-DSQK,@E@\M>Q/U ,,PJI !/MU<H0M5/
MFU)/7O+"VZ1ZPJO07VFJ.[TA'+U67LM3&, V/C,&VS#)!; F7A<&N<9 <7T)
M>(+L*% X1(P5V4IRJ]CS*5T-D%0]I5=PB\:#>%0ZV.WA,!?Y/:<P (CMIN;?
MD^\/@[AJ:^51S&F?,\498BXR![W"D'JP:^NA1XE84FO!&3.NM XC-QC36O3Z
M1VA.EH%O'@V)V,@Z&A(AAS 1TE"+@AJW")-:G?4GE,^0M9"HEZ6AAE\"I9];
MMHP3DUMM_68X)U B>_-!B;#/!A]4BJ:T%BR5B,I&%9<A88M T;*^[-^$J>:Z
MM?I&Z*2UJ$RESO.C-JV%3X\^/\XBG!NHJM>"WD&V,(&SKW(=F#HB0_0L:R&!
M5]#2/ M1U:C[A8M;BUI?U;H986YM^4O=&J)<#+NU<$VE.DXCIB<$3H_2J+);
MSPTJ1560F[!@+3:#=!XN@M9",I(A[90>8BTRJJ)=2U**M062^VD"_=)=K 5I
M.D^P(+7&6@2U>8.E,W;.#:I^-J&^V3_6HB>G*@#(OK$7XI%4#TXJD+4%]W7?
ML^GI1-;",Y5<G2R!R=J5T!^?Q,AGLA8A.<$R=1*4M7".)$2ZR5#6ODXR5FSN
M,;/*6F3&%AN\O"]K0=/#X55RRZR%:@)6;S$Z>CFW= *;M4\JC<#'._EOUH(S
MU0V DW-G+79Z#J)*0I^U3WAIOX=/$ST+[I$S.=^*M:^9C6*N8:17GN<S* \.
M(72+4M_%A,QOHL![$^5\J\,7K]Q6%[:DB-):QKDA"@-WGY&#OUP7SX45OS(0
MUS0X#%CFHOEG4S1?D-\R6CGNT6HAST4!YDQ<TTEV4HNK2]Q8"].<G6M]=NZ<
M0CGG%\%(I@%PMR51.1C*+*Z_M;U<-YA6ONHF7O:DK('H/LOM8N)FZVZ1EP5H
MN:;,++D\U/[&O?NJ#O..M'*-:U2^\OP/Y-UZF-WY:Q]YA0.]*J.P".L>!_Q;
MMD->#OD*G\G+@%VL5O=7@*SP?*O6LO-N"*='=_X+<3HT8S>.FX)8%=,3!ZA%
M<<GO/5W?L?#Z*B--&A=99=8-4^&55_-ZRBH#BJ#9&Y_DMM$D3<X)N?=R5WY/
MU\A1SY VN6C57>R8AO<5.>3ON7OQ*=OMG/B0!Q+OG?"04"*O\GH%\1\H)3SD
M5*&@6;G@"O_LF_!*EM%@K3F+KG2B7@;TMN/Z7!XNG8"$=S]M$4KS5!<_W/!N
M<E)=C11%)H$NN9$'?X5S<:,TU*:]D_QLUJXMMT!W)Y2%IHA7OOL@J+9AC2_)
M%R=%&\S"BHI:U*N-0L?S(N=WS)Z=+##R$ E]]W )XG8!0P*'!W Z&'F=LA5N
MW)I7CQ4:-.0,P8#SR) ,Y=>^1B$Z%!K.319Z= HD.IB56-=)ZN]([-A1&= F
MM2A#&]B.WYY6<:ZY'B[](#@1P=UP@DX:PS6P]DO4+%(0T*FKR0V1?^DD'?ZG
MWE_W :#H^ZI'0GJ(:0Y)CEE28*9\#!J=I]@AKIOMLKSR"=;8D^1;B+=L0);\
MUZ[Y>]A8DZ O283J$)/,?3@7U<(LE?>0W+R5^EMHC9>T!=2M0G*W;ICF0FDC
MO(IIH1EUW[V_PX1"PEZHL#GTV0V HB5E9V9;;]A[A'X#!X]">;,8%8;C_04J
M'#(Y/++6EG8R+_N>"!0,J1,BMG$TZT<.N4^#QXEWAJ8#Z@Q.F0Z[RU&*"6P<
M,+U_HRLVO/T($Q(H"@[MHF$M8OWDF<@096UU5]4-I&;TLA86M5W2S[!F;<%"
MK4RG:;:SMOZ6QG,D, U:6^A&Y[:9 )D)*X_H1&9\83UA%0U]IZH/+!:$<M7C
MVTC%,"<H8]I"[_@OM<C0LJ^W2$\%VL/%(T$IQKIS+K6+J"X3:3K'.1UIH$Q]
M&1ZGBQO<1Y@'U&??V1NLL"DMWYA#QC23=/SC?_HHQHQB>[A#+RC@A)!(=C9
M5K'#CI,Z'64&)>SV)M>DSFZZ '/3==3&,$GD;;C/L%PAN^5[;FP!K\<<<&5Y
MM)$)"*2B+@2-WP-[T!\)]K3%-\\5BG>,.N0T9[JP#Q F]J,R$_M1=ZS.780U
M"C5T15TLC$X81:6=8QDD3?ZRBB5,>"3NQZ-O+XX.:S]H*K*+NJUH:B-06&;?
M-C17K4@#! J0U$92N]%3SY;<X00/$B]"8B*4Q@J/F#W_)OW8HXE^R<N1_<#I
M%/\_6A\(,.Y^$MX&+?#%T#;.PO/\8IJWX3J*=SDU??/B68:**E__R=^$_MIW
MR7M^Q>-#&,J'*/!=O$0LQT>O(?096:0^3'-:*'<W8'JI8H+RM]B*PU/6DB#1
M#%]1NHU8);&ENLZEN<8IDSS7L9.:>/-YQQ.W7L5.F!0O*]=DQ&WQ+(.H!GS/
M0<$5=H-M?QPB.$Y*H KS!GH38RL^0R%2$P+6P:,L$ ;4KP5J?NZKP=A<QVZN
M1C8=YQ@J9ZT#KC]/Z570#\"=43I^KWJKS\]7?KE>;5'U7C;^XRE:C_5J]K43
MAU&6&BO)-L?N30225(#?X/$-@'.%8O\%[^471+8X>12.I%YP+YW<+OHJIM!/
M'*<^"K>#46AOPP1?0 CO>?23/SC746X7^W>'R4)OM3,I'QPJZ 0D!.PW/]U^
M"Z/G!,4OA(\4%O*F;'ML\>/RK<\GE*;ERY<*\6*:/@C&R$+C&XLX)HI /M-*
M)UCLB*+)U :.1'ZO9(W1_W4PP *R7L&V'$T?N39<&0)ZEQ9?A&2DVBG!E*^'
M  5!RJ @HZ#4]PX?-_!(\()"=$)Q!H4Q1F=#(FT,)G+J,3.ZKISTO4?;J]::
MIZ83?2.HSG, BIJY=02-V]K"#H:60)_%VR:++]^0>_VV1UB41Y?H$17>Q%54
MG'.,1I!YJ.9VZ+*-V0P\FX%G,_!L!CX[,W M!+S&56]BS",Q:S[(U0E@]@1B
M13U.2CE]MMWSW @R:;:OS2H7LD*VQ.F@C2FUO_$01\^E(KI</V6NBY4M-H=2
MZ&T <+(7RM?7W&WHXWW A9O97!_8Q.;ZQ8F#Z,G/*W1QV3^G]>QTTGD(.4R?
MV1S(U'OR#^UL,(G3&@GX;Z?IX[_\_DBNP-2=WOYUH@E]Q=>X7;9C3JGY^Y0H
M439C\S=H2V92I-J3;$#JJ1U#T(1I![361A[*<Z,=>DJ=-&<B=^0C_"0$7@\X
M!'#W!K_/.1"AOQ3.XQ5)CXUV.Q23@H%EG=M+)T'>@W/8,8LN*78&H4-R=C^C
M,8AI]U)]3?)VJO7S:'*2JT_$ZPI$7$V1T"5Y]ZM"@+&"3EP5CYAYR%_]V)VU
MS;=VN_P-^9MMBAE$C!(\@W*Q67.5ZSC&/(^W8,&T3NVF4H"=-[X"W/A=GZ!
M+RC,B'[SURC(=DA61$AT W C>XA]%^$98E9*%I5?BD^JKS;@JWV_>$&QLT'U
M8TH#G-=<'_]QPFSMN*3L=+BYP[SN^FWOY*$(/).3L--H_+'<A<46[,<E14,8
M->K?^&_(NPU3A'DC;6?(]- &_NDHD'&9WDX:Z+)=1^-JHM/%;3^'>I9DSJ&>
M<Z@G%X=W$>HI5R1-Y,L4!8]U'&S@<9&LBZ89F#,(B!6[$8Y<1,4Y:"T>(E/)
M"0V.]\Y:ZN?PZ $,6.1,;%3IY!P[\!CPF*T>$"QFK QO&:&;XFH$2AYWOU.=
MDQ5]#=+!4T?;R;+D0=^C[R^GPX8R1E3/+U 8))]X%WJ%FX^<<]V7X)'@/_.N
M#PKHW$7JT5,)3_7Q?"@XC8$B(G5<^![D^O9@WT3 T\\[),,!.(.CH1#5+*S3
MWG&" T5E+@4WB56&X[:W%@YIHXQD3("U0(Q;59T>J6 =6*(;>#/6 29Y,"YO
M$U4;G?  *>JD,O$IUF;(RPD9Q>@6:]$8E[5R VY@8F:6!;6L<# ATLYP)&*@
MK*T&,4"G%89:60O*Z XW;CP73-A@Z#Y<8YY>X/[E#/:;6I0>3/Q@;#R6@4PO
M9G\ZESW'C[:$"1J,C285%Z47P#^?%8#L6 >K"DO5;O?+=>-E!*W/T8V1+]5A
M"^*DJ3N3I9I.Y;HH,TLN#[6_\2HR*0_SCK+;!D^<O.F:'KY$NWT4XI/-S92D
MMS4P:>(XC<+\S2ANGE&WG8E34"G5+?@2S@;A]X&QOZ_7:^22J]95KOW6?A'5
M39<<! :9T&HJZ'J"#UP]^6*K5U?VY#9),N1A#87\@2,=='[! $"5?7T5E1NF
MH@<EO\91)W=6NINV_2;"]Q;K9[NBF&9^H!.LL[[2=F2_@6#LV=;<"O4Z-]@N
MU\LL);:3I'P!>[.5WZAJP\+@A]1#M(RK,W2?$5:S7#]M'?Q[\:N"..@Q.(P=
M NN5#&,PD)+;F]#_!_)N/<R?\-8FZU9>1\N7/9O74OQ;MFN0)(^/EJ]9#ES1
M9 +,R@]9#A?F+9B_^L?&RW2+XM76"7^-(N_5/V7YCHBD> X&0*YF?$-L,>@.
MJ^3M>3XBS(PR)\@E$@,FU5%@[*::!'I$ ;Z)Y*\/*QPJU@ P1#:92WFW(EHP
MWJKI(9<FCEO]K&"ID!K- .&" TP_6W;4&)"Q!=9-M>J&-YA1M-*&[[Z61IL?
MFQ:[HKBVO3KI%'L:4**EPJJE+&YU^AE  <6@5[X6EU^H6O?."9@QWLZ&?#C>
M0\[!I')#P&U@(C0B$]%BZK4V E(5-;']%V;8FD8HAIB9889637.Z%(W2,(.#
M)M)F^ABM]0+VK_ !&^MA.36@_F(54'H,WGH1_.E](%A9OC5K6!;<TR8RA&L&
M%K#NJFS\U@P-8 55Q5RN&16 NNI@*[MFB !KK/)\Q)+XX&-T]7)]C](FBYW#
MA.<PX7,.$V8+QN2K\[<H_A(X27+O[/AADJJCF @MSI(47YSC7+"1C;/U]_2*
M_#(]8+BW>^N(7YQDBW\@M^<7)R!FJ@FB(R@?!7)2YTC@<3C(Y>%T^GF/$"N,
M (O \5BDR4>JKM +"J(]\O+4S2B(-H='4O>!SRY%O6QGF<0F%I;:(1X%82:&
M>T[".%F?-@ IOOAX:.?$?Y DQ/PO9,_R=P:_C^7[XC9\P>VC^#!)?&'U+0.@
MW4>DE, >I6BQP4*/_;B51 ?+U[QQ(!_P5=3QO>NW/0H3DL"=&]PFB]Z5GXOE
MH#_$6+C$Z>$A<#"YA1ZYKX?CC0@R^]MCIN/TGNYRGSMXPLT=<A*42^'E^EM2
M=*6IDM-]W/)-.$>9ZPS2M6_]<ZR)8*MSW0G6G/Y=R\$L15?]!S<O>I(\. >U
MS- 1YP"2PU.G'6>\="LS<P")7E-$5;\?2H*F%9"=K]N$&.9(9D&K3< >9E@)
M0RJA]QT-;>ROS7DS<]Z,;)2XW7DS/2VYC8P:GAO)6F!,QBO1?%'G!.2<AP(G
M#V7BIVS5/6.-PH:JW H\5MSG;2<%:ZS'=ZQ,=%*"'B9>TPA_H6/46G",*@!,
MSZJUR6(:]IK T6HM-&9#XX^^6FN3[S1L+9XGUUI<P' POC_X/><UCN'Z/?OD
MQZF=PS KI0/?H)/G7 %..AV+Y'>2/LKP,,^)I.,XF,\_Q]20[_G\<TPG=TN?
M?VZJ";_U^\MMU>ZNMC4/-(F:B:#72>KO2-HS5H?767#GK\G][9@>.N>"SKF@
M<R[HG OJ&\\%%9>U2%I/]9XX&H/"04,".65S'N><QSFG-?:T7$T1QE[_FJGD
M1<E\1<,IBJ-EV\T!GG. YQS@.0=X#JV;QE,PSPFF.7QS#M^T,7QSCD0$&VPW
M1R*:-VJ++T/61MCI"CX<,=[P_<3+@7)]/*($7^/<-(O]<$."J1:>YQ>SO0W7
M4;S+CX\Q-T=C>J2L*CZD^-]0_()$[@ZIKD;='HT9YK,[%=B5\WB(1]!FN20[
MWL$WGRI>]A5O<3R#-<U\R6QK N[L.4%_S\B;+60V*_PIWF/LC-8P)LZU8K/;
MVSQY[47ODCBM$8#_=IH\_LOO^9L:5*M:^]>))O35>?-WV8XYI>;O4Z)$.4;-
MW\SO.ZYYE-[6P*2;DFKK8!XJ)]3*IE/M1*R6<'=BXW?C.')>.J4TM- @KJ(;
MT0WC$@H(4&N-6,E714>@Y #%0>Z-3+X*U-@;;+D-'@%>*K$.",9*$)[@4# T
M&T(V1<< 2AYWKU.UDHJ^!NDPJ>MA4Y6^/@IVM^4./N%5@T.^]:;1OCH 7>6T
M#@817VMJK##)&_ODMSBCM39L/5M=[F4FV";:IVRW<^)#>Q^0)[QSU\7E@3#!
MY9H0.UMNWX_E%LX%VO@6XYAX1;U,!"'FQ[4Q,:ZUE-W>YLF;?-_DEKCST/%Y
M][NH?&>9O8UX/> 0P%T)?A\321CYLXI/3B"(QNVV,S#9Z]T^B X(/2$2[1:Z
M=*^!J+49MHFPWD4J+)8Q(V3UR^(D7")D>FIS.!XK\_Q6&N'8Z1*LIB9T!!3@
MX3:_HA O,\F/7'@[K"MB9H?/U@LJL>)O;[4QM &^<%T4D-Q8\L3E/D:NG[,#
M-NS\#OIR9APWS]"MZN9<O_EIKG-P\F<$769K_SNW]@^Y'$(T?RJJQ(W +K;^
M!AX)GLE?)Q303?]368^Y:C),:.3.C83^+X$#\',C9J-2MXA&:DQ78[>6>.%%
MMDXX4_M_GT9F::8+$YXQCH;4-<M:.*0."_\>9ZTG0GDK*%X*K05&?E,([IK6
MIA;((R"\U9Z)CZIT2QU*\;&*.DUG%Y5&\]/LHII=5*"]/+.I7F'B#\XA3RV[
MB>(&E(R9,YN_<Z-\ XSR(#VA- V0]YN?;J,L)2]._2!S&CF]]8.\\/Z6)2F[
MT(NH-1"H%7!]/]X,HN_U\&CPNLU>C=FK,7LU+/5JG*F%;K;?0F<6;!W36BC>
MLW%2B\S@Z<C6(M-C5U 4<&M-DSHWAL4P +513_ALE[J-FGM7L<Q.C4]VALIR
M4.2K1T,U;N1L-C':Y*M, ,J;&K-.,^8CLDP+NYDHLTR?$\\,S>TR4<&#ASCR
M\ E9QD^8Y_DNJ^ %M=FT4R0/@I9?3ZAF67Y;$Y;-8C)<0VRSC1%C5K[I;C#[
M_!*%:>RX*=&%JGJPMZ$;9!ZY>R4)PO_Q5LX;T]:E/I()@J.#$Z0'?A!XHXV%
M-B=9QMHHKLCE8#"OS-(6!1GV7&62TGDB3  $B<-"WMFX)3?Y%5""A242>"*M
MM<0T7("2+=9Y^YSY7MS?.IN)\DEHR0BKU/_:NV7MRI]?MB1'/KD-OSAQ?,#+
MFK_OM5Q778S= ZH)B!3_;CNC\2?5=.1B39JM#4S\]$0M%UPHSQI9\7B8=.E\
M<^\Q7?K1.D!O;+]KLX'!C5E5J;XJXN809KN>8+-2N^ASL)-B$Q[BOF/5:6,0
MP(<L=K=.@LKW?HG@/EEW!4CR^[[3U\$J<&ZB&/F;\O54]["*G3 I'DKY%9_5
MNR@1H2LQ@(773*;<IL<QM.2EM9JV%-EC/0AOT!E/U7?.^VDE:?E^>L>Y*6Z!
M4F[]HS@3NMJ5CCM=A[&6=O7]W]69K/6F*RV\0/>R%@3U'3#!XV 3.M.5-H&,
MGFB!-8EC0]+Z=@KKCD![O*;V;A'+3*38V83MJ$JHY)J,FHU,5-K:[1T_)E-8
MKML;X/JMM D+S$EJ8Q@@<K&+XM3_1VDM;T^1096@DP$R[M'KE4/B^A9AF#E!
MA>@)_A5*4@8U<GV->*6=) HQ-RU,UK=A;Q+[C&313;P?OVQ<SULL">B%A2VH
MAT.@R.ZL4^:'(R3BE=9IM\,AD>2[UNF]PY'IQ;PMT(JE?*PG:UG[%\U*<GMX
MKE+,;JS-L,\FG*;K2G4QH'APWLW\-6:;^87=8)'">LA9GJK."$;J 9>G?A"1
MJJ/ (Y3WH*L:L=21WAO! VIT,UAC_J[PSHG_8/L[VTU@\0L%P%5',1&J+WI%
MG$J8J)>18T(1-=+V&;G.1BJ"I,QR$/0V\%B4_"HH#F.B9'T9#9KG7F,-.]GZ
M>T'Q>DX/C25$N-#=H[9)2+:7B=)#%?OGX]II!DM,+%PWVV5Y@G[=8* N*5@#
M&2 W3PCL2#+>(O%Z3+7YY59BR$BP=E[WL$MV B"U\33ZRFQJ5U K\RU!ZRRX
M\]<L9Y=45]L,\D+;S-%7+K2:V&F.EP) WN8"$P1A!)V*74P2D*Y1 R8VLB7I
M>UEPFF7J>Y@*P&/&>_3!#&C0GX>0JFG=VZITY-<=4XZU:/0T]S0RAD6&%*#@
M2/&F'N9S21X^!4^:RJNL).AE[54PH1A-W"LS=)CX3,-S6L9!.P,/%$^-JJ71
M.E T[@^NL=+.8 SYVZ2,2=0Z##1NCJZ9U;H*9UJOUTPSH76P:-PD7(NO7F#^
M!&F_#+(KZ\7ESY!PD34_ZX7@7R%"(&>ZU@O$7R "(6?P/I>8QOI1+Q_RNHGB
M\E^[IV'.!I+-!CK>%3F\1:ZXC'  4%XAVHZZQWMZ]8J"%_0U"M-MCYA$F4$'
MPI @][M-]/+)0WZ! /[#B7#\E]_OT,8)KL.4/'O6#3JDM1A]2L6WJ%%;G9_!
M;Y/_1DZ\>HVT[(YJ+#N(QE]6=Z+R1[."\)LH8X5:]!S,#K)]YJM"/0<#3_9B
MG:)8*^W-$6$!H"=FQ8)HB&'IB0HZ$E!WTYBY5D-U+)B0]:A-)*M!$_"H>AI,
M)/B^2H["6='95/ZL\QQ-?4*.ZJ5U/A0C2!4ZJ74N!1-8%6JL=89U(U#Y^I_?
MF<K4/B%4+7793A/\6'A)F>1!&6"_1&$2!;Y'G"N73D >['O:(I06YM1Z7$GQ
M<A<&QUC![N/K82SC*Z>AD9#[<A9%82YN]25Z6Y.3?G1>O^)-$?OX .)MG;]K
M15XH$V+.[CB;0<&904_/-$;Q'[?A0QRY*%%;;TY/DP01+IU@[D4\3&H$<7J:
M)(AMN6DTL<A.(^;K33<PE9T"O4'+!(8K4<WAQT A@&Q$F-QFQ%4&)C(/31AS
MJ[BY>=+'.IM(3PQX LLZ6T=/#,[M_H1W-.8/Z>$!_T >>KW^>^;OB? T=H=B
MSDATIY+H:#28A3D_N5 607<#I-TY(>L=FORG^38%[C9UF?D!B4HD[[W=[O9Q
M])*KS-PB;OP^)O8=<A*TC0)I"C@=#$S_J^-N,4>*#_5#S)L^IX,)UWT68^&%
M!0N>S8W_1O[$KP'(;&^B9H^S]U,G(.&97Z+=/L/7E:=HG;XZ,>+1(.QF@A0L
MU_-GW+$>D6NF&PPL=R5X/4S4LV()M#S30%7(%YT@D<%;"D$G$V7?3RD,5V@?
M(]<OGS#8!RA7U\-&:@.3  ;!VH:'M,)L@Q>WBX4&,'FEG!ZD)-)]8=I.)*Z/
M_8 I-&>@1,]6,6HDE=SU[?P,9?UVN."B8:W)K.=YY]Q8K+6<]8."=_NQ+@IH
M&!2<FY1U03[#D!!?RZR+XAD(".]R9UU&[3 L1/=$Z_)J1X)CE-WQ$W0X]-U;
M-6MHX"\A_&OM&?FX3CH\WBSXVNS5XB@U)V7S/M59#/J;+[R.([Q*T_V<Q+LT
MK$X&C#/7NWT0'1#*"QLUIE3&,3 L-.)^L_L*G/OJ"JT17ASO$;V@,$/\%68T
M-F-;)<?E%G.T'5HY;Z*]R6YOJM)[]\#S*1!T,K<&TA1(3AZV^59=)E$J<#,E
M!$S3GBBS0AD.!4D#$Q'5"IT"E6!.%;7*CCMLT[,DKG4&W&$P<"2X=?;;84B(
MU 'K;+A:-D8?) #<H/&]^07%*4D/?$(AGNY]E*)DX7E^,=';<!W%N]*@8B@>
M] H]I[>Y-50F")35VLAEI3X57I GK:7Q"7/>!J4T-#Y=X0N,S.;:C"K_@^+H
M(<*L)\__?R(2DZ0@/V#E"W^1?M:N,K1ZQ;\>BO\EV?#LUS#U?L#XDMTX+EKL
MHHQS@V<T-S[UWKMMP"NJFDFXQ7?.&"7I([[,/*7D1E/N(V<CQZ>X Y@)TW(1
M\I(;+-9K9X%,FAVEQ>P!:GU6*):4>-U>Q@GYZJ09T8/(<_=2-#0ZF(@OC\(-
MP8ZS<QI-#$_QQO'COSI!Q@*7WE:;U%OF2NTJ>LAB=^LDZ*0]%A]D\'BUOMIF
MV]QIM4./#TY$/&#I@391F6[&#UIM6D1!2$C $2GM[X>;*^<@QS]$8X DDKC_
MD)NE6!>JS?7[W@2SQM.V"^^B)%F&9"+%Y^LFN?JVH[8#N00GT;]</Z61^\=#
M[+L8/7^SX3P=/FS4*9D"UJ7_&U4_H7;:6]]1+'(E2%['F[9#R@48II%8.AZ8
M<ZEGDP[:/"X.+Q%=?8X^(\T7X#,!3.&,U+4EH-1+/1+(MB2Q:3^;ATB'$3_6
M@Z(39@STWOY\DX1U+J<>>'!M&-9YFK1NB-(&8IU_:3 (3?N)M9D!"O0W#3#6
MAO[WI+AFS[$VTE^"=$7CD;51_K)02%FFK WN[\W]A$8M>\/VM6+"M(%IQ@>6
M'LFQIFFF&Z:^.-@PIQDE6$IE;^.>M:$[K3O#'+0S!^W,03MST(Y.YX\3QP>L
M72@$[K2Z&,P;NO%#DAOX)4IX[XRQ6ILI\E5MCWQC/#@'PFCXJ2N"3K/3"8@]
M>78ZS4XG"+>&%D<'BH"%CB=8=V6A,'P/#A:10+7@YI??XLG5'L5)<7_5FK#!
MJAC0^2K![U2"@77'4^RLK\*!X)/L*@=2'77I@DF<UO1 _+>3#HC_\OO*3XNW
MK3S_Q?<R)_C-3[=Y BI>X63K[U?1-3MEO\\($Q'V9>NC=<&!?"=8KM>^B^B7
M*%%K UKY7U&2$@,K[^;:;&.B\/S6B=&EDQ0EM;#LS%=\\>K$Q'X>NENT#!$5
M\3XCF(CW#YQ0:$!H-=++7@KO%:EP&!)=DVB=^'-L4X"XDXG""&0]B6^9BV.[
ME38@5Z_1:AMEB1-Z&!,9@XJ@ARD(5_@#'/-;LPT<?A#CD[PI"E)>'DYML%Z4
M:]!DUJ>IAY[4H1OE4S-DJI\RF6M6S81S(AI-[) ?VA$5:$F/9/696E']UXDF
M]!7?;G;9CCFEYN\&RX'51"U7QV&WGW*)*:>D^9LY)9=S@.LM;-#"3?+#RRS!
M=]PD6;CX2ID4QA/RQQCQ^8^XGS9-;/&"A_?07>"R=:].F[E(7F<^)J[3G5L^
M@Z/0VYVK,</D@1<J=%Q]KN1;#RCV(X^5R*CU$R9OGJ)KT[&-+==C:)*&C2^K
M]53ZI//&UR<;OVL3=?=16"E^5UB4NKB?2&&4[V>*V>2!?3Q64330!N*W\ 6S
M$.05Q"=LU.@-;>+)Y<ROWU#L^@E*;L.";:ZBE/A<TM@/$]_E%6&8Y-/:EO81
MKQ?>+'C-\NU-+ LHSCU+I+(V^:=OH9]REEQM  NWPJ^X87I<C-^0O]EB8A<O
M*'8V*/^12 -1:8ZI9V$ Z-9.R)?]\>D;]U+.[V-JMSR+U^FYO4Z% _'DFT[R
M\HFKK1.6*[C8;&)\?TE1\RC_-6>8O%UC8#8CLI=V'A F;!>%^:\J3$8\C$VL
M1KA<AIF0]OEIKDF4*.XGB5XF+9HH?O')NQ:TU;J/2ATK7Y@D5P[JOY,@GR++
MX1&YT28D+RV)+*+:OZ=M>6NZ1#XSFKQ@+[-"[W-:[N(0WD1Q^4^D'<NR,/$D
M]'GE^TK&2OZ%8J9V)/L^(WMDN<Y'I(<]&9R.D6#U([LL'W0KYH(/&-Y'B"S[
M349>N;M-DHP</V;\NNHX-DGUYCHM7AP_(!%EF*A<(NH6TJ+/F=TGQ:S(.C+E
M$:NU-J9Q[<1AE)%(\<3WL&I"@"7_1J_RQ6EMTRX4\I5"YV]8&\PIDMS)V'0?
MI-)S)(5KZ!_C<S9!5W=:/)*;1"*L5SS.MRS*G^H7N7UZ T@NAAIHP@@[;V"
M,Y)@(XQ?M@X0;DA%/7U"*:C86ACHD6'-8\&/_;66=(:[\TB[*%P7*.%2R6/4
M,%Z)W3\P'A0\9+QBAT8P&ZM&XK3;C18BVZ@%>$[[1(U8\ O,URTH8;N5WM *
MH+6.O"E"XVF/+E+",X!BQSW[U(C?:F\TMHV-U'%"A^MKVM(RP5/*XVLJI%K,
MU93#F(\*8S>J&"CQD)\)G8XY<0.)*T:E?'<&CP;MB(\%!W0V(/E<L$I^O6U/
M!HM>"^UC41LG,!PH@/+W[7;\=^-QU;8Q CRUPJNR KG0^83<(@O"T>OT2R@7
MUM7G$5T'F_'OUI$WU750(6H?)H8C"56&&0XF!N.+U3(%PMI"5I,<(T;>!DS0
MIC@W)YD,$P.8ZJA23HRU3]=,<B(5TVU@@CG226U93&'2#OJ$*F<)6/O$TE1.
M"4%.$TS\1I:D#4,X3 3&/Z4F4L2L?1#,D&B52#6#">G(![CIH8<) 4PYJS]/
MS]HG[R8YTS+9?3 1'/D(,VVM,-$8]32/F#9I[:N,DYQ.E>1,F$B.>)-E^)-A
MXF#G^63DN5KW?NC0W V3J;#6/5,Z?#_W2'ZU[^52@TJV,&W6OG=.M6ZZ9B:M
M?8^?#F1WO"1>^]XXA7R9Y2<&:\;ZO$U_PFQ@S6C:8X;1GR!LP<-.)X"Z .;_
MTD'E^HW\$1E[YE=*B5\$^<?QGY;KMIJ>/S[6V0Y]JM$H?,5$UKN[15Y&KGYZ
MB.$]3#S.M^9"WYWYC%+H>W#Q#]:NH#<V,.U;S AWF,4Y:<[.[\K=QRE2S.L!
MAP!N@6A^'R-%>)(4WZ:< -%+I;';F2DBBK#RL5V$WA5Z04&T)R"6TD]42E38
MT\3110$>;O,K"O%=)<"36W@[K%]@I=LAI03*^?%71FT,BZJ6C*Q=-)3-<>0R
MS(!]Z?>F1]56;,L%>A=Y@6+?T12'D:'/ ,5,*OU%0MFI0R!0+8 B(=X]4BI3
MT[+944]@)C7 8:I26PXFB&/L("F=T;J _]YP*&J<MIO+LMW.B0_+=5FFR\4T
M$BELRE#6VQPOLHUI&-BH.:Q_2(J<"6SH^&#,.O+Q_@O/\XNC>CHAR>*9G'17
M>WEAJ6_:5&:T)&B9I4GJA!YFF:UXS4=$6"S^]R_X_DO(RYQ@A>+=#SQH)YZ)
MA;N636:5898G=SY&0;".8M)QI*W<8R+G"[=9C#4_##"$O]%S,!A<=9)/VKWI
M)GDTC?T]N\$CO.=F*B98_YC=L!4A9.,C5GYG]IC"])@.T,5*Z41N!I*ZV%@E
M_?O,!.+I95Z_9%*GM*@J&F=@]XYNBL@)-F[[@Q#WI]+F&$FTM#YBX2XK(AQ)
M2L';'I%4H%5$_DG]:CON"RE:)@AQ%XMX7*>(BPE&JS8)B# +"!1O,L:=;R2^
MTG\^)L G-OXBO>$JBX\E,(NTAUH9N.,V8G)C]8$LW&OXQK9&?IJ;8?,%]HN<
MB%%/^*AS.L=%, 6TC6"R;SQ3[%W9K]L-[*@6DNYW+ 2+(3/-;LZ!DSJ?99C*
MV"?]>0NC;O6%*M #;0=[_*T-@IO$L:\S,;&7$_S=+D]_#[;.:H_2CEWKUFE*
M1^Y(*S)N65P;S@I?2(SD(GU_,$OYC$>"OM*\8*+>(UY;4XSBG/AB9>"Y=5I;
M+R?UNUV>B;0VG7YNZ];*J.8VDG/<ND6P1G63/H;O;PDF5^O:\0W6YDM9)\5U
MADR\VU4#(MP5PRNL6RY;+3,# C*L6R/8XE_ 7M\?VNJ2OD=\C'6/*5DF%\:-
MT7E_JT=E0=,(G_<']N1W#8EH*>M>I3DOAB4=Y3*OT^BGA1*U9=TK+^=U.H:&
MALW+-_JAD0\;.\_Z-P\8FS#=HM1W\4UK+H;3'7@NAL,97Q<X29S6@,%_.X%"
M?23I-S_=/J*@T :W_GX57;/SC/N,H*W.Q#VIR8[<C)34HA9O9;4RL.].;WJQ
M*R\WVT ,%![P9)FV!#;.I[3MK--;!M4;.$_9\]^P$%M%IXL3;;/)=32PM,<R
MB"?C%+?>,;O]7&FA,Y^![$T/WZ9@Q6XWT22/C'>Y7F.U.Z9N.4[#.:)_CNCO
MI6.T398T50$H$%*5CJGJA!XW*D^4 X7,B!5<4D<X7\@&OE\KH9G Q,YL4#.#
M \"$"G18\S1$"G4UYFO%(A%G743>0$'.4RAA8G'VZ0^Z@CO, C7@K7!;+-.4
M=^%G,_5LII[-U+.9>C93SV9J769JQCQ;TH<@@N)U%.^<T$5'@41_@*_' +.%
M>K90SQ;JV4(]6ZAG"S40R&8+M846ZCZZ"TPP9Y/U;+*>3=:SR1HZIYA-UN_"
M9(W)W_EI3C&6IR2%W@])-Q_5<E-OPUS*DK_TM4HSS!&<S[.LR?+]M!E-.%^C
M67;E^DQTJWZ((R]S\TF4[RXG3+LLNZT^"^RO=[>[O>.F"X[]M=UF6JB6<4D\
MPTA";6; ]GH7A1M2Z.(AB]TM9E.G'??%2=$F(LXF<A"JWSVN>;7O: 8(I[]P
M76/>W'!:V=Z@5O3RP%@%CG.@[VB@")]P*_^.Y:V3!49>F&1/>;&+LI#U?+&P
MFXG3&1V<(#V4#ZNS#F&SD46F6V6UY6B^$&L10&^H_#N94,$XV54[LA\FP<+[
MA))26-T1Z-H%3 0D+'X#67;=&"4MSX&")66$'RC;ZWCUAAX\?J4 !@K@44&
M#R3#E,B[X;3X%(V? R5;4*!-55C+ZV26V@V5Q=?@(P@3J+$V3EL#ML ,>(M;
M[-#*>9O&[%?['-?,1VVGS195&YUIQNNT,7"C.LZAW%&7*,1;@G4G9+4V.?%%
MEF[S(\ Q5S :@Y@VU]S ;*YQHZX+%]<C(J+9SPN;+->KUVBUC;+$";W5*^92
M!_P/;*NJ^B#V0F_2E'.]7B,2SX^.DWO$HK&0'AD6($LLG0M_)8,HA0%&"5_]
MDL4D#>$&86'K!"*VH]Q=]YR7Z^LW4DT*?VD9WJ,T#P1Y1/M2 Z'*%=FNMMFE
M>'+U:(;IBCT[]7H1L4+Q"9-L.?6=I;M0"6^)7YAT2]B<1-*AML65!2904*1L
M2WP]B[\E@-_MY6Q#PP$8R[8SU5U5EAFJ:"<PHWV&(J&N[UA7 UD9![$.98$-
MXY1]>^W$Y$&0!%.7!W%I-6D,SYE+\8DC2A_+],%I:"+%KYH%-XFUV6A.EYS3
M)75OOR^!DR3+=1'ZSUYC=GL#DZ_/@;M:E(9V37> Q>4L,E7[P'V%GM/;$$\R
M(_M5>**9S;5!_C\HCAXBK&BL<#/TA%Y0>(-5Q5))P$KB"XI3'S/X)Q1B=> ^
M2E%RE:'J+D7^]R;*Z(F;(WS )#<JBGH0UAJ%N8-(@B-1^YBP4#;GP=UT]+8F
MY#N^H7A^D*=O/"$WP\JHCQ*LM@895AYOL-Y+)IFEN9C#^FQ;!>2%T>D9VP H
M1$HOUPLO$E>1I38UL8ZN2]#"^#V1TO-8U4B^[3U\0G#+SY__S*5!KJ]Q3L[A
M!92&)M; ^UN6%([M&\QET>L)V(<8WZ@R+"!W JZF-H;Q-;EQ7#X/8#;7)EVO
M2@Y3F&"689$'O%P78H\8N1YBM/.S'4URRG<V '7K?8_B+8GE.I\S*I]BJ[TU
MP5@!U5&,N"=3%).',\*:KD)VSCTBYF7GC>FG%/6SR-,DMF,TW^=KF@_ VYGG
M0@HZ(1->W^OPT>Z?X(GG^24&4@\^X'0N##$IF"*#P1$0S1=YH("I,2#>C;WA
M(:/?CF%B()_Z3K7BVU<21(+C2*DEFLP)UJ+$LQPT<)*[K@/%08I#L"_O=2#8
MO-=FVGM9 NJPT/<1S!@*C<R2H]C!I%T;XV2;56"&BVA<=!JC@$GTX-56-5C!
M#)$9X\#3U4B8]&L[],H&/KUX_ N\_: H.&'BH6U_2-A%K0X@>T1N%+I^X)?7
M@4LG\5V2KEX_ (4<3#2GRIUJEK4GU9I$9X'J[H,>HVCS>TA_FYF$ISB"=H]-
ML;Z5&,R_V;D0/F.]P'&IV3%]AH'CQ2EFW3*QJ;EPZ$.8\ EV;OR,=9/H<+[N
MI[.HT]\K,$;N4 N; YAZSETDYUVTA3)I1=";??35*6RPKOPC; ^V3 \#\.+3
M720!W$5)LGC!6@D1CZN(U#6(POH353+ ]QW--.$RY)SGHR!*DL6-<S7?"<KU
M+%3:%$OLYRRM5KJZ]^.K'Y8>)Z'(E#O#1C6]=9H3+5YG*S5-J4/"Z0Z V_(I
M8;76QF&YNF++]+3^AO=(@AM3_;HT;JQQ="BJ.,O:<C)%J&CE$J-!(7S:2#+8
MP5<#;0)'VZ[JI1RHDTN0 SG@ B]A_F3<C*V#2OYVK-GF!S1F8H#5:J*7$R;<
M%"KGA'$)/1O:J=>D4WE;P9716A@&WB/K.Z1U,P,*R;MX=T@@.H?I&(.WCG51
M%#KUC<&W<>O0ZZ>"R%_6K05DB/BUEWJ-'(BWHZP+WM'!9+0;7^Q$4<_N$FB(
MUH4%C7YKEC%BV8F:!J-,+^"M"RV:P#)C6V":&68EOX< !&?EKWR2#+$X/:QB
M)TR<O*ZCWG+E&IXFH\ZRLRR=-\D$W48(QFI\4QQYU6UNP#WPU0_S?7JT/;Z&
M^ JT]?>G>GZ7A_LH).9WO&L"4M P;\+ O?]X1IZ].ZT MV8+I:&!Z3[$?NCZ
M>R?($>/6]: V-8QPG<=<'NJ_<(IB* Q@UP;27E!=\!0G]\WKVEN<]'833?*1
MY#!3-W;[UXDFA-F9O\MVS"DU?Y\2)<;RG7XS4<LK>TY\SW?BPY.3OPDMJBS(
M;&]B\J<ID%S$Y;K&;OAU(<4=SXN<J5G748=@/K/<;J%/N=OC6U2<[6Y#EUV#
MK]O(%$__S4^WN:@A(A+#L8HX47)]1IAZQ1E<KOD[U&UH\LV4ASA:HR3)KW$W
MB!E/V&EF8*IWR$E(29+'W#W#?^66WM8$OD5=%9*J]LB.$VNWLB@L2O7^38F#
MHMR'K?/<]H%!P]WZ+'!BOT]+O\D")5JJ[(/Z1;?Y7F\7-?!H\,ITZ88#>MTN
MU0@XIJFP>C.6<5V'2;W@/7/*K;XBLW6_!DJ>\!7@SHV\HJ]!NHW425_M&Z4=
M).Z>X,'@5B'4BP9T[B8XWXR+T4DC[%ZB@=(I/.A<*RJ3=XNNY;:B0;VF5RAT
M=@5X*FDG7I5,BU\]&W+5Z9H;8)*O54_KH^Q:%]HU9%<P+#LP,="NPM>40NOB
MKP;Q@K9I#";UVM>[)29@QD6-P@ YZK %<5!/A<GT$>VC.,T#)R'%/]GVMN%Q
MYV"5@+P47,.0^]RAL)^)U]NBD-AIB^=;'_WDC\M#^ZV"]C-NG!X0"""3X;]#
MQ^EA.P%3^ZWA1;,X;_QHEL;O[SV:I7N6L2S9[IQ8\)*CJ)NA8)#DD3Q:D*%[
ME')#!^EM0>!_.$*IQH*;W4"0HF4K3<W0"O/E5^=O4?PE2])HAV)F+ 2[K;;@
MG*]^$/A8:4-/_F;GL.-SJ.U,5$(J<RG*%^'#3:EY,@MJ,=M/)B]JJT=[NH[1
MR*;MJ/^9W8>U_P]&>';W=Q/,J*2_PUVX8D'4ZZP#<A70+:M68PGJ(O^%W%QD
M'N#L-H<@I4YQ*M_+2JAZ%WTG*L,7=3^E(TEKH>W+JRAU@E7L>*B[4(_1P0GR
M].?06Z9;%)]^XKRA/7!$(TD.N2Y8O. 3YOEMQ*%5,83;D+SP0^PF28+P?SQV
MU=P^(VE;RNHKI50-.;N)U=3"\#W))R7%5AOPWCM.\(*$':?Q;"#/Z  >!U[<
M@CX@+ ]9X(4D-8TD0,D[[Y DL6-*]D;=#L2A6$& 8M"7LU%M)-Q3W8$./"**
M/&XP))9S.^%%^1BJ13>I6$>TFO;#L<L I5S(_=F6FTH,</8$>*)9@5H#J+;X
MA MMH<?3W;1,P214_D4Q64\SG]'7%&"8@/11AKI>T@8((@,@S-@]H%D&$T9F
M]E%ZV?9(:V&0D^I\:Z9UQ"MP^9:U%":IX_#Y4>,N)XRV53GI6@S5UB(EQPQZ
MV;"MPT2>1S"-X3!IGEPI;%D,+(U@[LU":1<I"R)Y3\_-MF-Z3[*?A#3GO.#R
M\"N*-K&SW_KN(D:.L0C?SO;K<#*1T_7.9,1O]_+!"?-E-)XH>. H*TXKSZR#
MQFX[U62++5S_/#.ZA=W6ILF:K)<SAWJ/$NHMBN#"W'F[P#(&;P)F2 ^E$01\
M)P^.@1J%.@<TO[^ YA/S5HLB%/>;B/-<9W&T9R=G-'[6%H*TV#MN?@%GAQZU
MFU@8<B369_DQ)O;&&TGIF-4=BZ,R@:>=Y8 ;3CQX/]P<<";CC!'>!XX.68H&
M:!W%FCC?B Z*.3(+  LXV\@L:4,DWU8T.^I;($AHV3"=>[JD0U-+ATGK-)M_
M5(?$!*XIZ66G7Y1@TJMQZ07:LP7.%U($!OT]P]._QG(\!59%I3FYCEY&>9B"
MVMS0HQJUN7"+J-":SF\1B,PR7[8^6I-G@?%A]IU@N5[[+L]&PVT/8(?P_1:L
MUC FSG^:A-G>1*+OJQ-[5YAC<Z?<;J4O,_4U6FVC+'%";Q%ZJU>,Q^$FRCC;
M5M##%(2"[=IL8V*3EH]"(@\?>5+!T"G4BYB$F>5I I>'4YNR^%T^Z]/40^\A
M<$(2?,[?WV-\RDC&<)+&ODO>"SV^:OSX](WK&>#W@;CNK+6X_GN6/_J0D)K'
M9-%R37:U=<)EKK,E?\W??KX-'Q#6ZKP\<N_&\>._.D'&E.QF)F, ]LLLP=I6
MDBQ<//.D4.7)'V/$/SOB?OKJSB"L,D<OSN*94W.FW<:4&F;DF;_^.@#?DTMM
M:U+VBP37L0V0D\2>+JNUME/38O D%CGG0*OH(8O=+69<1*6.POQ7]L'J,XQ-
MTB/_'\*4BZA%S)-9X25:/Z%MF4NQHKBJ$KU,+>*S&.'G-L)4V7H4J]P%'>-S
M^@KQH#BWY81NL:MH2ANG2(]\;YL6NWZ<'OW--DU.CCS=*\W]%@P9<[U>(S?U
M7Q"1?<MU[1?6OE<<Q$3DEI-L2VW2(SDDM?FP@K8X/2R,Z1'93]O5P+L&2^M\
M=@.,FJ<T&ZYE$2@DTN]!<6R.O/U@<VR+P/AW2L<36.> $BZU]%2K76/!1[&8
M 85,(D-Q1 -B,\>1:W6S%S\5V6/(:&<MN-+FME.)H([U"RCQ\V-N@\X9/S2)
M8;:#2;Q\HBS'URY0:4!'ILG+];91LU%*I*WTV$RMP#I:IUN"1\(,30.@G/0W
M_=H+Z13Z"M5,#!,R[=R7>71A1@E".84REGE[$50]=*.8]6'"I_T MBP ,*NC
M0#EV*CX3>Y&<XOCQ'2TPL=-V]C@75I@OC6K>-:J>)IB@C,.*3Y<VO53_">96
MX'KC>F9*E/],_H?PG7___U!+ P04    "  $@E]7;A!K+HS!   >,0D %0
M ')G96XM,C R,S Y,S!?;&%B+GAM;.R]>W/DN)4G^O]^"MR^>W>J8U/=5=UC
M>^QY;*CTZ-:.JE(KJ=KK<6PX*"92HIM)IOF0E!/[X2_. 4 "3+Z2! BFRA$S
M[I($'." >)SG[_S+_WC=A.29)FD01__ZS8?OWG]#:.3'JR!Z_-=OOMR=G-Z=
M75U]\S_^[;_\R_]S<D+.+Z\^D\_TA9SZ6?!,SX/4#^,T3RAY=_?I6_*_/]Y>
MD^L@^O7!2RDYC_U\0Z.,G)"G+-O^X?OO7UY>OENM@RB-PSQC Z;?^?'F>W)R
M(LB?)=2#WY-S+Z/D#S^\_^''DP_O3W[\</_A_1_^\3=_^/''[W[W3__XX;^_
M?_^']^^5;O%VEP2/3QEYYW]+H!<;.XIH&.[(91!YD1]X(;F3@R[(5>1_1T[#
MD-Q"KY3<TI0FSW3U':<9,@[^$$HV7M/@#ZG_1#?>=>SC]/[U&X6?UX<D_"Y.
M'K__X?W['[\O>C6V@)].9+,3^-7)AQ\8B]^]IJMO"/L:48IC]QA$-G_=:__R
M([;^\/O?__Y[_&O1- WJ&C*R'[[_WY^N[Y#/$_:%,K9J])M_^R^$\.5(XI#>
MTC6!_WZYO6J<W>^_AQ;?1_21?<+5M?= 0S8VDGA*Z+J^7Y@D6C=8EM_#LGSX
M+2S+_UM'+=MMZ;]^DP:;;4B_^7[L1._9":!F9[M/LFG*(32"8R/: ?&6SX]C
MBX_*Z089="C(Z./1UXQ&*[K"CUD,&?M:HQ"V=ISHS">/-#J!X_3^]S^^1];@
M-W_Y)0[9,0B#;'?+^%RNS^(H8]<%.^GL7VFPH@F>$DD+I\6)]>[Z_<%SA=5*
MV7+A4JV]] '7*T]/'CUO^STP\3T-LU3^!ME"EL0O_O)3'*]>@A 6D%YE=)-6
MYM_<;N1D4^I_]Q@_?[^B 9\G^T<Y/?;#7^1%>I]X;)%@@6[I-DZRR@Q;FSI8
MT;LG+Z%P3ZW.XLV61BE^V].$3>V1PB0_[LHF-]X.?G7ZXB6KY1;OZ66>P34$
M3]$?*5S4='7*7BKOD9WOC1=$[/>P?Q+/SW(O9,=M\T/#-W,Q$P<+_BF.Z.Z3
ME_Q*L\L\6J6?Z.:!)@UKTM#8P;2OHHPF-,V6$5M$MJQ9\!#2<_J0?:;9<GWO
MO39PT-WO<&8:KCR@>D?]/&%'BJ8_TW!U'W_R,OAY=[IAYRO O956C^2!G1TL
M/A-]LB3W83:PB=/L-%H)<:CK)NS5U0%+-TF\9;MA=Q-Z$<SIXF]YL(4CO<R>
M&H]#1R=3;*1)IK# ?BJGSW[XRUW&GD48]2<:/R;>]BGPO?#T-:A^@O:V#M;\
MT@N27[PP9U_>>X 'GNWT3]0#U6"U9&\0V_VP2SYZ:9!^B>('V"4>.ZY7T3;/
MV)]C)J.' 5[+]TQ@^<AF^6O#E[(RE*OG\6/WH_2Q^BCA__S"#A_C\H8F0;SZ
MT/;NF1K"P1+AV5,^\V?V[=C79;-L8+BE@Y.'S6<*;<K>)/[?J^@FH5LO6)W3
M-66S6EV\PD>A[+K!B9^F*<V:;MN!Q%P]*8'/A*2[C)VM+U&0I;=W7UJED?8^
M+BXT)M5E[(IYIBLF9[#S L(%7U/^9O\GGB6QZ'^B7G+_$C?=6(-HN;S%\:Y,
MK^DS#3^T?K>V'L:DK^JB-0DF'8V-S0>L)*L\9/JK\F79N;MB:O:Z^5O?PRO4
M]+H9).QRXY06P;3W.U[;Q]C'.LO3+-[0Y',.FW(9T=K]W-K4P8)>;+9AO*/T
MC@DO@4_K'_+/H/:DH(S"<YW>QYD7JG\'F?QSG/V)HMCS& 7_25<-'\/>> X6
MCVTH[_$Q 3,<F]5R?<MNI2BGK>?OL+XNM!HNGK%5/_69;L(^3YZRJXU= "GJ
MNV=>^B3^TO21#R+A@$6FQOL4S"AHMPK27S_N[MEP-?I/GQ[&;I#;<W8%LWW.
M;@9P)(C76I69ZRTM!W8V-E^A# %M?)4OO"2*\PRNV3B/,K"\-L^W?V<7*E/Q
M/LJ=B]N5&SK3CSOE)SRP36K1H62<LEK>I5<K]E6"=< N8"X\BK/*=IBB\["_
MY1NZZG7;F1YE(C/)/3@\EFLF%@7/P2KWPC\&V=,M#?%LI4_!]CZ^8#QDN_,8
MS+,UQI-#*;C8 ?E#2O^6LX]Q\8RW=M>W;&SOY@D6,ETQC=.'%"WDS0]O8P^'
M[B"Y^\_1RLEM(1V>H=HN!I4AG\FH]]XK[=*#:MJ94X% 2^?>$=1/X!5FJ@E8
M3YO?ENY.3B_:0B$1]YYVWS59& ^\9DV,X<(0MT7/;/1X#:8G.>5=MSVNL]]$
M+\9%#O;]VJVY]V<+=H):C;W= E#?Y9CLU.!"R797$7B)4-!%N^3]DQ<)MVJA
M3][&87@9)]#)M"5[V"0<++-R#]181AJ6I:.34\,%.,C9%=]J/FQJ[?0=D.]X
M/Q5";^W$W!Y"N-&-EV0[#/M@$A-L[ YYJ[.; U;X37?6^J3H;1Q,4KC%:E6+
M^C9N;Q,F8Z#@]12'*YJD_$+LOD_JNUF/=>):U^EJE3"U'%W<R^0FB9\#"$?4
M)]W9W,6ZQ]$CQ/] S$>75%C?UH6R)CR(A<K S]AGVJBK-7=P8S;$&PM4>&G"
MQPDITO6NXS8\C,8Q26'[(6S<O6%:T&H<YP@7ZR?6,$NO(JZ[5T+^\(\0H%Y(
M7):6\M!9.%CH&OOIQ7I->7( 1O@J?VF*4CF0B),;9K--Z!/[A&Q*_-+KB$UL
MZV']#67B')R_N]WF(0YK'DW][P8M4V!WC)/='Y, OMJZV1+4U-3-M]W$$8HZ
M>!K3JS3-&UUH3:V-+2([[& 66ZXO7OT@A;=U&;&=@R/>TFV>^$_LNJBU^/7M
M>DP7<J?Z_@OJ[O*21)>TM7MYW&1F(AG=4I\&&!!YNLZ8D!.&\0MHWI=Q<L9$
MNB"[CM,6=^M >D["@#$\KC8LKEW%[-/3V(&OO.LB]F3-;Y?S '+6GBE_#Y?K
M+\)6Q3;8.DXVL,YEO%S=G6"0^AQB'N[B=<9.8M/);F[OXO!!-$6T@O_ Q?'L
MA8V1 KVZ.!3OV#WY$$0\R&+/3^R5P8QMGF)Q<'C+\M)HNFHF&=K8(1;W_WU\
M(UY914YHEH)Z]')B#7C(RC>NS0A:UW*2E)N?$O:F?(D2"@$U=/73OB%N$ E7
M@I&J-+?)+%H[MZ+RF;<-F'3#IR73I]F3?YFSY:4@%'O[!KOA=%S8HGT_W^1H
M(\?GOT:C:[W+^_>?Q\5>$W_1_VJNZVSL)E!CY)=KO'3$OFC*N.OHX<(NS$YM
MDQD8_C2M7?V,_7.9W,<OU6NSK>5\7%O7G8F)'=U<Y0+!,XDATW#]X95WFF5)
M\)!G&.$1\SS6M-BUY>/5EA0T@NJ<LC.[KIT>'2T)'U)F +4WB)81INB(.Z9O
MVF\/&NYC#%L?M/JV[B?=$2+>U/J8K&!"46!RT9H&(!B!=_;B=1OPP/<F'\'%
M*P2=I_0F"1IE,;=S<B'7K5;H2/#"&R]8745" FV7Y5K[S$-^&ZP=%[;X"33Q
M<BPGBFW"%'\P>%T&KYA%A_ 1D-+0J. V]YC'5]=@<U#6X9YY9>FO>*QED_@Y
MDJB3$_S7/,W@(F*7CRKJ-Y[>IO9N W.D6:H],J&E@RNCICCAETF\43RS;3;-
MAAZN\4Z$P>&.9EE(5R":Q7D&$VX"$NK;VW7L7,>>JF_K8M**M^@\SA^R=1Z>
M^IAIIAAJ.P("#Z+AQA'%[T^T>#&M=)E@I-H*_8),2D(!J]D7U:>S"VE6XL\L
MU_N!@AT;L%_?^20ZM._ CDY.;CG,6H;[MLYGRU[O, <K,EP$[/]6S8$L0RBY
M!"#HF5?#&GR.HT1+LX'^ A;(?XH"IC/VR^Z99FSGGB!IP3AODY<;.SB.Q>T1
M@NM6)9&'"^P3K:'EK5WF9,]K#A]N[>(PUU.Z887T $>U4!VZX$#;^[J0U$,O
M3<7SVKJA:AJZELO/F$SSV&CTKFWJ0GA]]H(0+FDF>-YY(2V-O7"=B-N/_=3;
M;&R0\!%:-WGP'#<B4D "NX_A5XK/^U0 L] K=O$%41KX-L.OA\]G(F?>&2*?
MA  .]?KOM&J^:V[G"LBOFM'::G)MZ^'BE6-/U6=OT_XT5QJYN$6#]%<00+\P
M=3C)V"30]MJ1"-C:QYDEHW\2;'/[66 ^XDXN5,0#,1YK.\_;]"RCI+FM7 3(
M ]X#A& T!Y.9',&YD:=O6%=7+Y>:M(($!8+&'I1NJF/IZI 5A1&$6T?;)&B+
M \XCC;PW.,A^#W,!#2+4FV\Q$? -,&2!#PA?;!53:4ML>"X&DYF%DZ6W<V4J
MX>W>>Y6^4UY4IC8KL[N]FR<NWE!(ZY!6P2#*V:<7SQ1 J-%UG% %@>CBE>V%
M.&%WFI?L, 8+(&# ?A&';&J/\BYO?A>MC6@R<TMF3:!*40=IW!P+?D!O)Y]<
M^.T!ES9E]Q5<51PT4GC!FD6:[I[S$-.DD"6".SJDY@,(.''3XA2X.6##WDYV
M*8M4& Q\;_35=G0[0K-"&;NCX QWN:>LCNE"I8+)@1V^57^MMC)V-5Z&]/4A
MB-,=Q(TTWX%US1SJ^BU!A5J3&9L>[]AU%-(>GIL1!)VZ34IO$Y@Q6KY8:Y>I
MJKO0QVJ]ED: TN:VSBPRK>87@W#+NN0#Z;=XJQZ87#>$C"/)BGN)"I2(%DFJ
MVM)YA 06T%RNOZ3<0MLK0*+:Q]PSX_EH KAX#3*9M0W_!H](B^C=I]M$6N$M
M?0Q 2H@R>%T:E<%*,X>04;R\*J95]<"+JK:>"OSSE;UF</4OUTQ[IDDS#&A]
M0\>93ZTR6TW#25)P+](LV,#(36@;0R@X66AP>="5-%\I:9MLUP9^T(R?V-G1
M).8S*IFK?66SQRT\B(3!N;?6KMF_-/KV,E<AYBF@Z[)$0]LET=U^!ENXH]!6
M;6.C=T8I82N%.=DGC+GCAI>($7_:RTL82L5E!*P:0M.6BM;8WJ5)[]9[85<R
M4X^\\#"+7G/'8S(3]0>(MH.;>/#XYO+JMYZ/@S5?==4F$PELG]C-O\DWC7*:
M_G=S#X&7/E6P=Y@^P&LD@VVD29+I+NQFB+)3_33%6PL+PWS<*>6N56-0KWCI
M423=1+CZE*[0]Z24L$AE*FMCN:W.?B[NR> Q0A\BNWZ*4-6;.&0":W?)OIZ=
M77A\08:%+)*KS3:)G[G_O\W5T=)A/J\7O \0]^(_T:;"A4,H3"7;*RI12YKF
M&$KFG+?KX#_;'D+M[V[0B))< =SN"FQH;N^B)@2*.+ OXXA-H=6>4=_6:99Q
M>A_+R",PNI;!"/<QO.D(-[^"%XPISRM%KSX%!..@1P2FE:','8TD?A"Q54QE
MR7V?[EVJS>U<!K!]W"D199<)@H#XNQ;]K$]/A^DIEW%"V0/,#[+/D8UXP3I
MKVN!;3V P'S>OB&(\VU8(U#>9VVGQM#PB3A*ZBNC$KJ*\M4W=GL="Y/W?<S>
M-0@4!2F.K3EXKFN_8/>M>S#%J3(\^)M]2[<@\T2/8$#*JZ>\L_D<0-5/\^PI
M3EH*4+?U<)..1KW$!S3><ZAI'V-^HD"$;C2MMO5Q^Q)^]$*$<WZB-&-:3KYE
MVZ,-VK57U]F *E]W  )V]7*<G-P%6%_?UED<2"]P$9=OA6IXD<"?R[5RP_0P
MV-3W<^)D8 /S%!>UH"SN 179L0X"?A@-%QM+ VRM:O]-&ZV]TS&)LCHNOQJ,
MAW5^3 NL7<.YE1C:KL*]9JZ262&;@#TG7$-OEPN:V[O.LQ<.NV9Y9K^I.]M7
M[Z2>YO;S2)P<7L> BS&*"-.P I8'M:[]B.]UR31/+P1P@XMH51.\W-IT-M?_
M09>WTXC.TMS8%<>IM'1XIM2"<74IP<M$9@3K#UYKA2]#Q!W&9!9&?_',?*01
M73?&L77U<I9@V)>!&4W<7A#(I%E,(V<S-W--1SQ<=\_Y:'U"8"^OI@,UOIK^
M+O1SOM>@0ARF\C[R&+\2ZZ%(YN<!XYJ#JTEW'T73W2( @+HF:+?SM]_<Q6F+
M=UZ8[=K/E=;&B4(9^0A\A-)OD/XJRF-ZC[2I$&UK%R?O8&M0Q,?=)^^O;+]#
M#%6+5_-0*@[/@B'/SF!R+H0VB:A11 !VN>2:.SB9?NH)%#2TP@FXV-:J<6U=
M7 EM#]UBTD-53,+_ 4@X,(^ OS<M[XLVD<SX6 X638F/0&R>3MC2E@[&(E5&
MI^W7X_FU >+8'M+!I]7BCO1*4C<>V%KP!FK4GWMWGQ?JAP[=W:QJ]NP_!X'G
MNLLKVMS!A;/ZD!RQGIT<&F'$J]9A=)&M'$QT'W&\]?YN;#X_=/NN*/;>W8_)
M@B3>$_3?%;6W+ 6Z508YPF520O4FP1)N'F\>+BG0$3=1@2TG*F4#<\LUFSL\
MYUBB@/[,9,_^3J?#R#I%:[S8;,-X1YE:E3P'/FWXX"%.0Z@MTJ'&CP&"&K3I
M/7;&<EX6XM+SZ>D&<H%:8DAKFSMTW<>Z(ZN?_[ZATSQ.<)?5$^(/6KWFXVC.
MJ?!$AP&ENY^3,[5-J,^!;=F<>E2U:^OAXB;5RZQV^J::FKNZ%&K*LX,"BWGM
M]][K#:PN6^@:?;:#4U/4S5E)RG>H MF+.+[@".,:>MUC-H2"L9F;#&MI4-S9
ME58?7.1@ HZB\ *>$P'QTO+^A_3>WCDCA]%P==Z%D:#K5:QO:VQ'WR<>DY"]
MI 7'KMK$V8(=&(77T<F53UVK-/@YSI1R$9W9[[W[.V#NR]U]@B;VW<<@#)6Z
M\VU.VHY.\[("JA*.D+TAWN\RSIO8&TAL]FQ_9AOM_H6&S_03NUV?&M-9QQ$]
M0K-.0\DFD7X)#W-K-7H[MI^1DW(%IL$F? O^Q;!=.:YOZ]PJH99JA]2I9EC@
M]EZS>*8ZB^G.J8*NB6JH79XKLV.X<$1NMHP%7@"Y>C=?O(J2NC)MO\D9>1 -
M)R<2XRG9A0<NHSB,'W<\=*%5)NGJ-5'J=:TS;._/QQ2NHCU'TGE3G*2FF#AK
MPSG1;M.,5UF"*T-8W],[=G,VJK*-'5S Z/0KU-39?'Z1C&4$8F>-Q2&4W.2L
M5>#1NK*FFSO,7A]!S2EHS",<2,R<D>4EOG^*\]2+0 IG.DZ4[4#1:[&YM/>8
M6S[ R#3P)B+'I !V28P&",_#SS<\CY,;WM0_\"LG9>P>5I?3XAS>QB+SEC<)
M91+Z2MQKLK)$*Z2!F[D8NVF_"*1B(?LU7[#U#6=E->#%+=E#U!G4?1@-8XO]
MR8ORM2?2@.":8A_7B]+VA>_NY#H5JM&A4&UE;"'U_%UT8397[NW38P:Z <ZI
MIV+ V[K0QT3$Y5X@<JN!H*O7O-RFASM)K2!W2A,S>P=2-JBHM]R(=MNKXSS>
MZB[%JK7+/%A0\G%%RAH&^/5GJ(F L9WT'S2);^(@RNY9,WH' =27Y;.FU.>X
MHU$0)^ 73<]SRC6G/AJ7V0&<8184%3ZZJ\?6MG9<:0H18=D\L*+R3OU+2W[I
M 03F9WGJ;6P_E(R;!*"]9 :<GJ(>M->J&$-I'E=I0\BJHNBG9T_PSZN(1R$#
MOE][E&N397RJT2T$_FE'MCO*;[_Y3#).6VZEQN:N,=?@949_.>*IM=ZK[;V.
MR3S7'@JAZ$YV:BP=.OQ$98XP$Z:QR)'Z5W-W0(<)N.XN GTQSC.QH+57Q7BJ
M;A*=>Q95:-B/!Q X)D=Q-_Q3?=(Z/UZF_<@C9V,]7. \]G%>?,LW Q76MYOR
MIJEY:_2_S<MRTC\P]T B%@2J_3CG)H?4 1UG8$9LAWIH:CW1IF;W[HK)1VIH
M1FWH0'M;9W$H=U[8$9Z]WVX.L!(?V<EZ@H2$UCB-SFY.],4  :!@%_2M$]?>
MQ[G'JC->IK&YR]!013E+BU_^'#"Q*?&?VNN='T;C"'4D)2[<JC*T/\X\ 'DD
M6/I>J$"S*;4_B;EL^B(RN?7^[]7522TF"?]ZXP5,X3GSMD'FA=T%-GITM)DL
MJNF?%6R*B]1/XI<Z86T8(3<QA[)(9EO2<7,5N+(BEDQ,;@Y6-#[2$5[5BN$(
MBKI=3E5=3AW,7!0$V[H"E^0\2*C/^BE%BYL]=[WZ&9MEBZK7:,CN[.,4>$8S
M\Z*)MW3@]H.3Z:8PKPCB Z*]#Z4RM\C<0\J%#R#DXI%1B@6!9EHF#8.F(0JW
MLY_ =1A$RXC'<W<4.!M)U$6*I!)N&:T.3MGKW=W8Q=F\Q"(&GU\8F!I7=XD>
MU-_<K'V?AB!GL3.AX-TTOT;M'>9S/?#LQ<$X_OO=)TJ+8Q(\NXW2&_:IO? _
M@NU9O*HS=K<TGFBB&(;K8?#MN9=Y]5@5G<V-;63=#*/$,[&!8W[FZ[9SGVXN
M?/%!%"=*29SE2\2NKJ=@6\8Y?T1T,(@C8<(JV[>\29.S?C ]MR>Z,6E2;>+<
M1JAL&XBN2^&E 0V6W>"PWP%@ABWHN;=+F_@93F\6-J5^B2[=_>8E1C?DSF$
MY>'B="LU!XP7[KH.26J_G0NW61^9SSTT0ZDRMFT$F5.40KS7<EUC_NH$2C(^
MSC$9ASH#%NQB-!\ZO#$1I_9;]_6(]^\\QZV0]O.UT&+5;< 0F9W$9&*Z'R?;
MF%O2,1[^#)[<9->J6+3WFD'<!,?!/ R?0>]CSJ[[TS4@Q?C9:8L-M]K&H-F!
M'=\5^ 1:=/9J&R="O4C%X-<G'+$X0HMQ<X!N>Y]92;ZWU*?!\R#A5^GJ.G2Z
MM&V7D94=AZQ_?V-;OJA'VN*2V&OC9+< \G*<['HCN[;U<)@V?!\+65**D+0U
MHJ>SF[GXP'RS\9+=<GT7/'(',7N1]W!>6N6B0TG,43H:+*GJV%$5<07%6(BA
M[7(NS&=^UF6J:T8CO'EBKU!MZ%!MDSDA]S<=A0,Z.H*^#U8!.Z;@&&%'%:Q_
M;7)#8_MC.KW[860.L%5G#*+:D5#J,E&T$%R7:\A?N0SCE\YZ#6U=G*5;,P'J
M-,^>T'?0@1K7T'R^85IF0K!<AE<5XF+7M5[3<!:![KLB9KWE-N_LYN2!#2(_
MV'HA>LE:8TQKFSI*!!(QH#=>LDSPPN%^;FD@:<G^Z>KIPB2$V$_+]<6KCRG?
M@ >UC.#RA/\'R>69O?ZH8+-K-(!T5/@#3_)5?J&T9,>:HPPP_6L;IU[(])5\
MB^564A_#VO*BKDAS2,$,)N8FV5,I2RN#6>YC9?>(")P^MKNAU P:&=:A@(>#
MO";$@(&;O@2NE- H<;/A[7 BSGW9*KH:/^@CX-GV"+BX)OK4 OP<"[P\E'W3
M^Y@'S1=_A\BKSW'V)YI5*P4B6!K^"MHU^?<GGL0Q)4/WA@ZHZ!^W%.1+1&[@
M6"JY%T)) ;LXVT8FZ-0S/=S-U2]8>BQ]-X*IC+=!W"L1CM)>?JFCTT0INI^\
MUV"3;QHQ+O2_.W]=ZB*;E'"FP=%1*HUYX"0-1I4MO?-38-BJH]G,##-=Q<]M
M#4&'-=8*8S>"+J774,SCQWY)CC4]G.0VRLPT<!#5YRO6O]6WE(=C2RF*RSZ*
MX-.: 6%[V".M!-3VJ)NC/]%K6(0U-\)45%NXD#;&& +XYML/)A#F =7DP,T0
M3=++M)-P:1S]8YS\>A7=)+%/A;E6@+QU6DM;>KKQQL-9@F.(H#9>V.53:.OA
MXN;O5Q'60#%8DX#I^/GI*KU,X@TZ JY02^\#7W8H%2>G1 \:Q@"-_IBMO3J;
MDRN#>!W2UV9[F][ 9.:VSVY :=GBALG:,+_:AI/ 8?5 &6WJY-0<45RV0J;N
M!9_;N[L+UN@C'/I;NH5\#[38]RU_W*.G]0B7,TBA8.]Y0WBP]F>7KSI[CKN>
M;V@R:]3+;A_(H82<>-NY_MR<B<*$IF#%A(]6]>Q *N:2*CP?57I9L>?B-<@0
MV*'YE>GJXM  I60L7W?$!+1VF4A? V")Y9H#30@4]$;-K;FMVQ 3-0N>_3ND
M:.YF$K>2[]<85M<=>S*.O)/W#].'?Z),T?9"F.EJPPYUB@$<SU2D/K;C,AY&
MPP&3%5>/7JY(<0FU50DZC,9\(71ZRVK]J,SGQ69OD1?Y!E[L-D(S] 66=A^,
ML\!:E>B@$]/O5^+"]"C&7OQJX8);J(63TU_B,-]0C*?)(XQ>:"GR=B ):W-7
MZDBQ=<Y],%3UGW9+;W,ZJ^7D@ ,<\IT)#4<P89?!S*W^?[W1#&\U%>#+Z$76
M@[ ;";627=@J<34V-P?0 ]CE(+SQZ,A(R#GKLBSR#;N:@GQ3=RC[=YZL',$E
MN^:]4,9?^7E5SVIOZQ91K=,&7]_6329383>'9!YV>PJT.O9D_4Q#=H?*GTO
MM.;DI@&T9E0QKK\I\1 *+I^4+B-%3</C">^1#I#:R))F^Z6MT=P&UD$,5]_2
M>"U]7+RD;,%7XOTI[P7NYJ(KN$Q &L@S_%++=15U@M>A:WIVC= ^@L"M6Q!L
MEVNF#V/7:>.VJH,[2F&E?\L!R^*YS[W7U/QX];+:A&FG4W'QLL<[+\QVPH#9
M]'CKC6:A/(!EJSUJHZW+9,'0BG.@#EBFH9%1$-+R&M=%2D!&YW%5E6BJBS0+
M-B"MM9HE3)%VFWG848VIVLY"Y(04+SP1MR]C->J/Y(&=G<?7=[TK3:W-+70+
MG++IZI<'$'4C^W)W!U8P8;KG(T UM^'FM/5P%*>Z?Z6<9F=>DNS8DK>Y\_OU
M=6HE[)62=QKB-%#XKB;='>C],CW>$>;X*6 B>BE16SE[+0-.!+^HO&E[CMT:
M@V&/3L=C_ZC5S X-A9AF;&/OWWV2TR];/*KG3!(&*88U>M_LDVOOX,;BNF;K
MC=DQE[3-F*HW,YAY+^+WE)2=MA3[QM;V8R5C)@TVA 3L_WVVL3BC@G"<>#+B
MZ!$RJ6_RQ']B5W]9?^J,*3N/,<#Y@5PK_[YJA2X:2LT!X[^(E(%FL!RUQ<2N
M,"P9U,L15K9T<29*2#@>4JCX1UKW28^.QP0O=R",^?S (0^=GY,THJSQ]:IO
M,X.$A2Z@NJ;F3ARE7AI'EW%RA@F'5Q%\\>7Z-(IR+Y0.,0#>#A*,36&78Z/#
M]'!*UN]78>_;R81*N'9J+M?:9K,OI=++&3B*I)-(TA<%/#B)(_9/GZ.>()3P
MCO]O%]L'DW&B)] U31(1OLGU5&ZC:]08&CO,9/H"N_(_#V)!Z>3"2"<<&1CP
M :_B4[!M?V_:>LRU9$X_Y*%. N:LW.!-9&)):]6%_49S0H)N!7!O[^3BH=<]
M^,N'C(G;\)GEF\=>[@:LEJ8'?P3%>21X"5-7>WW?[G[V,=/IHQ=RPV:-XEK7
M8L8)/1W"\<%D)C)#7[ +_Q&,.4G\DCV!)N9%U9/1U=IQ]&<E+JQ'C&>UQS%I
MYTTEI1 44O=EF%:\#QEZXDH>S2 '!W2W?N1.V5*NT-H5>G5.'OWO3F6N!DB(
M_E[-3@)NE+#!=H!^?9U^L]8WYL#/=PBM.10@JLKUC3:UKGX.F+EGM-F^6L7;
MQ@KKK4UGY6CYN&MPCK3X)H92FV-5M$-2,0:0FKWU[G2=T03].*R#$>.=3M%<
MQBR[O8-MG% F&6R\EMS8NG:S#*P70;7J'_8>8=OQ];WF,!_( @';]W''+U:(
MMA@(6]!*:2)E[C((F\N/[35Q6)F);9WJP>]="O$P&L<&X]D2-CF<IK';JB(5
MJH &=1=+6W,7$='%]H#SJ0).E' C>U&#7<@>(XD>>=!>\\MB>S2'R2^]J@ T
M-':>"- BAM<T/";+6&=<2%%&97XA*P=,S4G&0HH@WQ)>JS%-H=+,H9S'(2#*
M\G!,6L,"<?"_E^SBC9.^<MXAE&:*FH^[K>F>ZMW?N2^^[6C6M9Q(ZK[;>&$H
MG[E&P5MO-=74GF@8=CEUM$8NK++"ME@X544@6=,UT]Q^HFS2^R#C",.KX!F1
M1QL22NO;.<+&Y6<<E-,6":"FH3'=01KY&O+RZO2'KB[S<+?#LP?^#BZX\C.E
M1 #CJ]C?"=^+FBNQ+(5GX9*]>-[K'X/L"0HLL>_"?E$O&;6)48>2<L!R%52C
M2V)H;N_$4(W(@UWJZUZS8Y+XA?#,-LV:!EF>4"%]!J+:J7106W*$=X_KPIF4
M>"L*%9!A3O@#1/VV1_ZU]S'V MSD2<RT]Q;XS$H+8R,K-D-18^- X^-0*A/)
M>4QNAXQP\9]K]J94$V?;VSK*MDG%[?.99NVHS[5M72C"(@= %NZ$ETN&S>(>
M4,Q6NXZ;=Q@M%\^@D?STZPX "M.C'+EAM7JW% :CCLH[T\[!V 4M7!B?XHCN
M/K&'B&:7>;1JR>YM[^#@X^]#*+-=_$L,H?1P@%OOMWY]G8"3;;<ASLL+/WJA
M%\'!I#0K7[ING(M#2)@3-8K*XC)FZ2Y_^"OUL_NXE-IJ)9!>'><5A=$6L=_9
MS5P\!7O'Z)F7A/%=@"4JFF*9NEJ[B>JA7N+#C7(.55!C3&I0-('6X]NWMWMT
M0;#JM*<R-[9W8K:"*FDETJMX^EOM5\T]'##0!!W<[CGLZF7LQ)Y"F-F*7H<M
MN4I[;:Q<T8*U2PJFO?#>>Q4NI(\THNN@5AD[I/NL B1;85\[NYG^^.S.N@SI
MZT,0I[L6<:NEM9OLCU7NMU_*>ANW0(XBJ%%$@]2MKPFRKBQW**VVF=AX@WDH
M9 VNA([R\08(.@_\D A[K?=/:Y>)W&OBY"X380IH\*[5-G-B<$7M;5<ZGJ52
M#<?R$\V>&@W0O;I.!B;QX8<']%C66 [WFLQ+ 5*JXJGQXP.BSQL(.:F$T QM
M>IBW[7!"!H4,+PC!V@1^/?9H*4CVO;"-#^H_T?5T]A30M2C<YH7+]9K=/4FM
M*-+5VISJ33,:Q<_>Z4-;B:]*FWF\Q\.!_,$869:@:<WZLC^N\Z .D28E+JQ6
MR;A'1[=Q;.RPM^#<M*C_A]%PP*3</+$,7>(&"YGHU.XPZMG9O:!99M??LP%2
M".W0S*KP(*%.<)\$CX^-^W0L5;/0Y3 >35(>R0L0[TIV7F/R>:^.3H,$>L8%
MN+L7&BJG\DO,0 G6-D(NKD%%[%RNB_JP;4%DK5T,EH5AHQP8O]?99RYX+EA%
MD*[VT5B*!Z5A[8=2<U-VH QBA^#U-NRLAL8S\&"T 7[5-77CMP#%GIY3_E]^
MR0 6=7.:5'L?-]ME+RRE"SJKO<]\*E4T2Y M'9QL)*V*3 NZ45W+XZX#4;E9
M;REX(?%9XWLL]T)X628H$-%[)DY.:>\J$KVZ&!07QJV_ !?LES2GH]/42R+N
MIG-,$=6=3"HQS_/+HCQH<DY!*(3SXBI:Q\D&^>^'9-K4SS423IM^4M/0A6+5
M:$J&QU+X6ME/=VR2(96^5]@RFIN5;<IF\Y/)(1Q'^X$$=!G&+Q<A[8."T*NK
ML<=%U'#;J^NV!\_<U=K8C(IK!9.%6^K.I0(70@"0\9RONEF/I#@+!;,KVJRM
MQWSBS5I9:.\SQZ<_[<AJ:JV>(;$_.V,^)IK!/)Q84 (),S84+.7V^_) (J;C
M[*OZ[8#(^]XD)BLV!)='3>R"]F=WJ#&0IPY:%MOFZ9?MBMT7K.7[][]M-<#W
MZSN1XWOY$M$$B@(T!.3H?S>V9<%3&_E!& @#-XA'/H1:JU;6MK2]PP@X\N1B
MI3H1*]:F"M2WG;5?9K0_9KHKY'_E7I+1)-SQ(D8MMTFUY5S!]+K2<PXD8LX^
M5):_K63-5X[G=4/>X% J<Q3)QAH\X-S8R70?,(/YW$6%*W3H751'8$(HST1B
M']?<0W6M##ZY$DD2S<3L&+%OBQ8GR-Z#7WV)@K;:JX<1F(6+KA,J]Z"NKF*+
MX'@G](F=\."9<MWT.D[AE#(M*N(R@Z_BR7# ARCE&7BEAYJ=B.7ZWGMMBT4R
M/YB+5Y3&CXFW?0K\/6M$JVC>W<]57$]/O(]Q$!_C[^RF0+:F*[JQO9O)^_"0
M9O3T,:&TN1)UCPXNDM,Z+[G9H'4W5ASK[2]IZ^X")\#SGY@PFNSZUEQKZ3"K
M+ PF,JWS\#I8'X[ZKW0U)L/ B6,B72#UY9<D@.HMZSIQI;&MJ[P/+6:T+:]#
M;^C$NL5CY5N2:BH&W,Y],HJDL?V#1:WPH91(SK?4I\$SW!NW\<X+,5)4($&5
M?VH1BD=2G"R<N5WC[MW93;R4MDV87'GQZH<YA+9TX.;TZNI&M2TEZV;M56GC
M/DZM7XR:FYB%K0#@1Z]JC[*!;3U<!5VH11\J;ICZWW:AEPPGZ>+% ;L4!DVT
M) )I;9R\XL(AO"R3_V[B7J[!7EU=^#TA+ 4D:II"F(?0Y]O+*G88GT>1G$].
MKL"),I"4VTII+LD2RW53@L,A21(M5%Q@'*[7%&R\PHQU[[U"D1H>>).S.0FL
M\3AJA"_L3\!99 N;5'_'4&N7>81=#,[AG2Q9>'!V<%/X1GTD6$NP1FL'@]CN
M:;J,0"CB,E+:".A>T^Z8/'+"ZZ7<5C8"I R-/I\'@]_Q%:_08:]%/8D)D"H4
M3!"TNGV)$NJ%<!G\M!\6.(Z6>]4-CF:A]_; 4NG=W0%K$#W+0^2I_Q0%?\O;
M-(:&QBZ2Z8/4>WQ,Z&.!<XRXUTU6F=[=7(H=IWGV%".661=VXUYC@V^GA-(#
M(UOQ,()2T6KQZM7/A25>!H@K2+H=JF5K%R<1XWK!L"[$]*;F!@,?\-"P,7Z)
M0R; =16X;&UO;5:J7- :A-'=S<6^S9,(<[0 3#)XQ6RM5@3CQO8N#]W'7?'/
MGP,FJ"3^T^X:P'];;KB>G5VRI2"17R:82^_O6O,?^O1T@1 JMKE(B@$,R@9'
M< -?!Q!P$>>QVU;K3[=^I>;VQBXIKIO<QQ*YMBPE"$+AI>?36N#)P_HZP3;B
M=05!,!&^.47/+X' FL2ROMV/20ONC K]!?.@G06E5H9W6#-%Y.8IG[P=8+:[
MGT/3FYJ9U/S*-;5V>':%)-2^] V-YV&M[9",VWK,*D@H_;C[Y/TU3LY"+VW#
M83F$PD3I3Y_C)'LZW; KQ?<:X3YK&IF,:+IXI7X.7H9FJ;^FE3X#:$M>-R'[
M5_3XK]^PH;[<?:--B@G8,7N):S6>LBH-Z#B-N<E_"1^*2(LD#BE?<[;D+R\O
MW^&RPXK_\/[]C]_#G[]?B;0:;BSZMW(4PNA1$J^)7PP$_RQ'^NY?OB\G.7]&
M<8A:!LL!B#;"<?&7T22EUU4FS?,@+PH9FU.88@9^$$F'_!DH$23U?V8\;76=
M)YJ[EDP+8?P!]XU!_MO 59?D2$F/<(+VEGXL%%"S]Z4)&>J'@:N#TSA!\9>H
M<R7*9,G#CJCMQ(0)SGA!Q)S9/\I9+XB<-Q$3)\7,B3)U G/_JK^#>LC$J"0N
MA[6W-O6I] .W$1(CG!I!<N3/G*#%"\X,!^H'4-FP-V_IT%I&E6@_F:,T\"-(
MNH0=7X4R =(+PHB#",#('Q%GZL<Y8R?UD::$R>2Q'X#J2EZ"[ E$M8+5%1N+
M!*76OB 19SL[*K89C8>X8+SXKOZ %; DVK46$T*G;,J1ID9*Z3 .28N!R!,;
MB60QV8BQB"<'8ZN09K8D=6OL2B$%V"P'(#\+-N48I!B$P"C'QJ5VQ^+M"J$+
MRG==D *>#!FTL&VU6&05*NXT6D%UQ>2Y=&0/_(H::>2#L%><".H3B?V-3@2T
M8 [D3!)=$"2+;!6$F>0'I!<$76;'PIE^QR()\U,'>TT1;%VF\WKHA1NJ1BID
MR)^!D(7=9'3BFB(YQ>SW/(>*D5LX$5=+"+G,$SBJ&"/^)8H?X)S"S805DG5,
MGR(P=>!7@ZD0G,N"*+,A<CH$U5(Q(8(S6A!U3@0G1?19D3]CDBF!V1&<WAM?
M374KR11<D.\JRP(2WQ,E3&1DBAX3A_"G\A.TV<+("1&HAY;UTB%N*?R?7SAX
M$?<\?1BS@E>(*A"PMRF62KQ 1B);I/XVET"_^LMX3Y)"P"?) 3<$G[BO:E7,
M683P/T3,AMQ87K-FA_? %4""ZB7-E.>"YC'PH=F4D)FHH$7"<H2CX 4RFJ][
M?)@%P>1GFUI^%93G)J%;+UA)KZZLDB5B,+@K<; MAP]"WLGAOH5G3(Q(Q%!X
M2?%5X:,=._?JUQZX!,>^#W[/5R*"*&NZNI;Z%V>:BK!4_CHAUY[E#U])AT!0
MK=N[+\.,K8TO+](F0/Q(. E;6$C).T8W_78"&[A1GM1WHY6P11VCI7"NDNLA
MCMB?J)?<O\1#53(<ZP0'(^5H_!Y9X 6#'U8=>$%@3,(&/?(U4+_U#^]_^,<)
MU$;4 U,,0OXPZM"INC0GRG1J($L^3'#D#/*C?@3!@"73;G4C#39U5NSSU6.3
M6K9RFF6F=)P=,1.Z0N^ DQ(*3;FY$.QW1=?-=QE:K@8;@G1)0C4%[:W!6V*[
M<OP*OI=KPF=!^'/&YD'*B9#Z-RZ=Q'SH;K'"RN:8\2*UI<^9,ST3A2ICZ^@8
M4J\ZA2LE+\C689>E)D6J>$2'/?B5XRNID@C)DIA=U1LD;,N1;8@/L;.*^7-R
MA-&S*("99$ ++)F4BVH:QAU-G@.?UEM^BWI_:%)-T;*A_AU\S)_C[$\T*_%#
M#-A]"WMN:?)%4QN?BS3SHH.;C4YVE/NE^/CHR\]M6DIGLW3J+L(!2!XE!37B
MJ^9SWTK<QOR61+'@\2WU8&Y+6;?M-2 <&!%#=-K<:8G4)Q4PK'"HGH-&-BT&
MAE03:65^&$TQ @_A!06&TM  &#$$!&4)4J0<I8BNA)'DWRVZO&PRK![@(5Q;
M/Z-6F*^UNBOIA64D*: X$\_Z)]Y#_/^X@PSK$7%#&D4") E0M!Z$8Y 336J;
MF!V.=W&.^"R;#6!@ :H2CEZ#>C%2,;C];]YF^\_GZ.;9&TZ\J!(TUI:J8(U7
MZ3KIP6-Q 5G6*JSQJKE4#F#8$I^*IHS6:Q'II&+*&-F_RC@B;DV,1.10!,:R
MM76ML2FV;D_V;.]::VRJN[:6,XL14(6AL";)/_VX4WY"F76L39"]Z'(@HK_W
M#SOU%T)(M_A.EISO8X%*F,]6)%"SQE(15"E4V7(BTBHJIX+7F1K1*F8SJ5;C
M>.W:HE('+Z"=H.[[((-ENHI6P7.PRKWPCT'VA% @L.N?@NU]S.N^<?">@;L(
M1^'.&#D.^3.G:"E8W3)?>FA$214T(T[7(G_%+L\?4H2]RBZ>40,RY#PKR!*D
M>P0,A/4SG\JI48-7+;%0AAN'!$7EPF2ZC* Z 4R O(Y4K/B10 >+\H[C5*W'
M IMD1CWRJB# ;K7+D+Y^#.)TET( BF\M0D @[E"#X1I DB#-:8(<QK,@-M4Q
M3KV2:S'I_#%LCR,*H)]=9'I \IP1%8^'._(!4(0IDTE@#-NZCW'VY).BLG5Z
M_&SI<7X?_@FYF$(0+QS_0OK6I.ZFM#'C*HP:*BCD[JJXW9*!YTB'<;!T31K,
MN/6SF& BZ[1>0PB^G,YN?.Z/I$N0<)FKN9LH"<@T7[JH7](A1:5;$F*6A<P+
ML@"D!?K910[9VZ.N9D["X@T\=IZ:V0SI6(^FJPV8,Q546!=,:<\.9H.SFA?A
MR#EJNJ@G9,L^N&X1%W(;A^%EG$ G=^FL?+I$F:](.,O8C$OXLV+2"QE(QCX+
M+RE#_@R,$,')5_M)ZK#.EE-@G2GB2DT\ZJ%L\"3PBTB&"7STV+Q\2KP4OSC=
M9OAZD!_?DP4!C-5C84P-_="R;&LCB*T'>IAE+NS+U[$PI"4/J5RM@:MG('XL
MK.A"JGZ>SJDOCM,'/$WOCX4I?DW<95Z2]6+LARFB0P&]DDUAO'Q;D"(8U4"H
M&.(DX;#R&.]J40$TQ))4+00U4K)E/P*\E REV=J4C%NB]4[GM![%0Y-4.QTC
MHAK"#3NM.T0*]GP44$;Z=019@G2)2G@2YPY7!<Y&F40DK,*9;=O'J,FJL@L/
MQ9>&#ML "0+G9I2_7&+EV/<ACYJMAKP^V935:(V(PQ$\Q>&*S85K+>,EP0+/
MT":,O&DV]G=\6.$H5<;X!T(M\0>8[3P$XG2U8FU2Q U<)C=)_!RPEW3HD\RC
M*@3-!4&J)$Z(I&OQ2\71(X!Y Q[J6&<$T#H!8@C#/%%\@A$&*L'6!<+P'8T"
M]AD^QYE-!"D)IE.6[,1K_#,=#K'+"9+2$5L@!GVV"?=MCA/UQ'>P8S]3RAA7
MNO)7\)4QAFP_W1*\'V+%9!8H\J&XW'8C)4 Y!H?JEJ,LBBH($FZF^%GQ.''T
M8)\&' %T"HG1ZI+4ZODI62?Q!HOO ,U48)J+L9FJ'(6[/\S09+I?(X*;?<>:
M$VNJ0! OT^R*W*Q(_B])T;S\YA='-:(T+,^>->5K6!US/H[Z(BY\5F]X 36[
M T;^%)"ODQ1A&;L /[&&62JK4%9JU. ?SYG47!@S9["_^(P1R!'G7%,I")L0
MF+ABH/]JOX&Z18NE\L12/>)2K6"I2JL_&,Y2)?7>PVQ_WM9FRFI-PL[%>DU]
M"& [QP)PRE^&PA/7)>LL2#$.WS9L 90_'RO'%6E),L[D[8<@X@=P);C%?.34
M+K-P.A+ZQ X(XXZ+_2,+%FD4I2+S[CI.TV_5>D4+<IIE2?"0\ZHA60S65*N6
M2(.LJCJ;SF^ =.W88^X3#QZNN]WF(0Z'YO!P&H03L19E#7D;<;+[8Q+ >5F/
M]TP5) G2/&%$YSWYL''>MJ.-#3&PEV0@&7E!1N+UVD*BKW)6-W&$PAL/MKE*
MTWPPS@>GQK%\%R)Z9T$XR=GSH%OLD)&4,\(U(1(<"1_ZG=GX0:P9N?!P,'D.
MHN^7ZXM7/TC!Q+6,V"N ,[FE6];MB8E78S-RQ"CPU%$<!PU?C&. &^'U*))R
M,%L)\Y9X%8=*\KA<$TX?K97+"-]XKG8I@QP7B^J9.^Q;SE"CZ8P"_ 5# *6N
M@Z=OL&*CB[<BR-+CZF*M7O.U+Y@67O[WY9I= #"?O&K:F,)\46>P+WT&IVNV
M:T[#,'X!4_MEG)PE=!5DH&,9]F>48RZ(!Z.28EBRCA/"!R;75DL$3K88>G(P
M J.D['*7([T%#C4A;/0WMP\+QTNDU!9?&1< U5UQQGIHE 7F-,&EN;R,[2@J
ME,TJ1E.![;OFTOYY$.9@4..6M>7ZBTA$8)<LVV,;V&QEB9*1TOB>@34J,CF$
M"K42LR$4IP-_R26(Z;:<D5I*SI;0[F[5PHHY6EKN]_)>Y"R$@1;^(B="E)FH
MM7/>W&+IX*@'[YX)@33OXG7&))ZADE8=6J@D.6<NZK$_5RL.! ;<^-XVR "J
M#VI$"O*V ]P1QC1:P7] _F0BO1D40@1KA?L=@4QI2?HX6 DK7. _%*H3Q.U+
M3\Q9Z8C91QWSRII-;;ACXO'F+4MQ:NB-7#B)E+DMZF#(/"51M N(K)!O"GE'
MF>C7M<R3B_WX=@D-\SZ^$;8CQ<XZ_D*0 37@5Q/TB6IU/1JFPG[\V':JF&>L
M(J0J#$IC(CB%"W._16<+!!279A!3Z4J5&&G5SF(][\< 1TW)2\A6-BU;N -A
MN#M 8L$K\&<:KN[C3UX&/^]^2I@R_B5**!=G?AJ0!5+9CLA<6@Q'GMAXL#<W
M8D3R"$-B90PA0CVR06TI199Y%[L7>2Z'(3\+GN5(!(<BY5@$!CM.EM7M_<E+
M?J4\#*/\XHMZ;FT[.-3HOS&V83WH<<:3K@8*7_#@5YE5_"Z(A)'BV]DSH65%
MT\<@BB;G1'F5S[AZQWF[I2E-GNGJ,DXN<W:(*/B:O>%Y3+H#6PPE[2-R,+26
M\N&('.^(6===>VHH@C2C)2KC]CEFLGJ^R3$5%RVG-0%>HV3.T^7954.4V@0*
MJ37N*NJ.'$18O_5P-KN.G1IEL :$UZ#6K ""3)2T9X?%_BBVMB0RM6;U<HWR
MMCCO4.UKI/"I$@>>5B"8!8(^FNB.@RUYCZCL+-="<9#LG%DI(6>2FWI3:N<W
MLGAQ7#,Q96CJ+NLZKXEID#]69K>7S'W&_KE,[N.7H:I2-8\;"$(:-Y"<',[C
M>B0(=2.<AV5$9UML[94U<,@;>X)X+1LL2@D"*HJ*JE1U'_-$]+2XI4J]=SBL
MN!RUL!)R$;4JSM7X,LO9<$ GS2CP9E;*+1# #>"HLAT)N-60A R^GBW:ZD9*
M?9+P B&QLP(#!(E/BOQLGD5= 6OE=!*CE#1'0=12$"TC^B?J)4(N@"C"T7)@
MU0A9&!]?<$2LK+UC8Q)/#FI5.+3-?8,9LC _\I&PDC6,18K!+,F0#05>#,#,
MN:I-,ZZ(0&764X#)Z=._WXVJ%;K' -"S7BG4$ ]M^V<B1D:F%%_&R9H&8($#
MJ*B+UVW RYPV91E?O$(MR93>),%@.Z7))&]E_ORQ*3EHS?R6?!!DY._?9V\[
MBX'IZGL*@[+_^J!$AZ'-K"X9"N6%-UZPNHJ$S7B<P;2@28#H"=L5TC0^@;W4
M)$.:@:W"U57!U7&$R129F_,*/RJF]<97L3:+V6;H0Q(\>Z#27@:O,&TV/DVQ
M;.Q@>5129&\ T"22J.6JL099T<-U)ZEY6[/YF)Z=!BO*GQ6TQ7!8-&6W7?%2
M+@<;$77=$&T)$$'$;F =0@0 N0+V'C+V?74VA/**P--Z>RPN2.OEI8U+E($7
MVETEQWXK:Z*>@EKDD:;=<?0+4.O".*<S/"6GJ[_F:0:R*1,+52>+ >?3$<QZ
M#_]V$NA>&4D\#A12J]<@HZNG@'<TQXEF%18<* #$%A$;,9U "&"72;Q1W-IC
ML@D*.13A*"?!C[JE$!+J9UBE5D3?W-$L8^H<6/#8]0$S^V'<W?4YCDZ006TT
M[LXY'M9J=AT4L]/X"I*CY:OP+ZJ?2)!?$#$ &K/9")CT,A$._\B+KI(A.WW1
M Y/7&\^!M7BSJ9G;YW'^D*WS4*:9E%DK(\LYR+05-7F[)6W;?MD'FTQW).PL
M9" B\KT2HQ-/M+2:T,U%58S"O/&298( ]RM$B[BA"=H?AR>L"Q!M$77*Z$/(
M!1]!%+QB8W!;[K$Q64E<%YP*H*NM9Q_]!%C8()30?A&'D==E01MSJ+7R#0*$
M9(H+M*$([;A[IZVRKO4[QBQ'N@6E9,QZ(=U2"'FF44Y!^*W# V$Z;YA#<#Z\
MA.S_5@-P*W4>>7V1A ][U'P5@A:.Q&7])GB38CPB!P3@LJ-F7P_XLOPY#ZUC
MSAHPF3[1RII#?V[>H?Y3%/PMIV:*Q"NE'\5,\-J]BK:YJ'%>C$S*H2<-"YKE
M\C4E.YZ5=C#=9'K![6"(GL..6!:3!\ID3Z%KLQ^Y<B,.&R5WP6,4K ,? I6^
M1/$#B&>XYOS33)4)*D-ISL=X0[2LST49GG-NV1EBBA%=V\[ 6+5B!V9E=?IJ
M\2(C19?F.=6:M?6])-G!<V.[>.N8::LU@K4$9_OU@$=,NTZ<\958UI3'LD:V
MBUI)-Z5\WR$<:53EP))D*<;8+\G7&+$ZO#Y7:Y"JY1)=)MFI9NEV\[4@>B;O
M,?&I)O+VX70OV?<XF-5M#I+-;<$F+=F,CF6C[M>/W#KD3%;ZE: IPE@'8FWA
M,.P?"5KK"%'E?+Y[B5?0)B=*/N2QL%F'T/!6F13/A*2]*,%]2O)$H6_1_QAZ
M:2J,?Z/>;B146/HF>+8U]]+9DY<\#L@&4JX-W5TE"%J7 TUP4>MO$[3F/7/=
M@J-.W[<]_=-G+PA!%[^,DSLOI&7F"8CD0M%D/YG+<]&Q9X3VS Y,D<[#9/80
MTTKU#)<WM0BJ.>%.0=TI9G*RCI,3F$MU&4J3 W?Q^>C_@6?]CFT8IO9H%HD%
MSQ5B4YYOY#W'6.=!]]1G_[R/X5<*(,WIXV."S_X5TX:"* W\T6#[ M@=Q2$Q
M+!BN +>UOC+GW]?/1E:)\ADNE,\ OZ[4K2QX( 43MF#XRX3Y,PKJ=W@5K>CK
MO].A(?0B75X0(TB-,'(6?6, YL+6B74/B@#W<0B," ]3DI21_O8S.PSRHD%D
M(D-!0==F8 #K^-G;C#,* 1$"5*:0*8/T5_!-?&'*?)*QL3 38IP;'&GB0=>H
M3A@]5/A>2@B>,8*R#(-2O$XE8>L"LS&6PA[<' $;6E"0X&6*NCDRUT)&DU]%
M>+$4 01\+F. +$ =?B?)?PO1ZOSJ*F,43BW5<;#+HWJ6#F+4^MDRS&^MX8JS
M9JL"QX#\"EG'B6=9B2I_[ U S*CAF, '9^ 4A9G$1$1=0'PYY%S>Y(+5E *;
M7Q:.::9U']XO90:. B]IN\*E'M)H"H=V+V!30!!-@DMKF*5]_U<G;U,ZP"SP
MJOO >G [J1/,*,.ML;<"VC6>8M,64J#B[P"+FQHQQ .&((T[\H,PD$G=2G14
M$0C*8Y#&^"5*67BA!91A2&%-'!/1YX59\GQF!*>FQ<<JT_L:EK0)L[12X+)/
M^J5%2YP(?ENNI4MJ;$BB&DXG:4X:<&B0I0H"]!/8^A#[Y4S&.!7OMQS+%A27
M@.WC=Y^H\!7!7O4A-)%-)969"$.M%E4L,C$BOP\ET>-E3_H?)/YA*E#S)0YB
MA#>63^1X96J)58/-5.QKLG8!_;C25V/*C%V#.<=SGO9^?(J_GV9LTZ!_[[U*
MY!<?CS8O&CC.L ^5SW6JHFJB51-%O*&0S2<S"X(H9R=#V"C8L_F1KN-$(,6S
M";*#],J.2IPP&<Y+=IA1"\FV$%\8AVR(1ZG4#;=5L9'(.YC3MV4.!I\6*>=%
M'G!B1+3'J2V(/I5"^_\J%K!B"(-5$6L4\)\R&-W29:N4PT1/'88?!."'*ZMC
MCG>VJ'5!N4.P'&>"0J'VF P/X^_/Q&Z=,GN,5N0AE>$'9#@I&;9;)[<\P0)-
MZS*(@I1)N2!TII]IMER+)/OA9G=!&1"O.&V4:%,,> 5)00YP5-QIH(.2KVT2
MKW)_8N^!-*0+(+V10FR3\Z!P&Q0HA!.X&NUQJZ$7E,I77+#)G0EH* ]5N9"^
MRI3'8+/UN*CKE2JX75B7HL@N1(KDC =9RA?KBPW&=BEK]TJZ15EB4;KL>)C2
ML=@%-TP#66%)8OB<J?6*RV-CD$J4S-*%.S9BP&2<D8+BJ4QPDAMA5DNK[C4)
M:'LBH7IO*<25X(TITHYRMEZ8<P?EVR XTV;U-F0:@A9'Q<D@%8Q]M!@H@\(6
MA-T_8-@]N_3'R\@VH_A-S3>L3I57F;)=?M? S"ORZT1UL@Q,7+>ZVI]W-6AM
M!.*\$K)F&9R];P W#Y$>E3Y=M6 MR$6:!1N,PBX=1F^!56DC[A.C?EA,^A3K
M5";1EGGS$(,X8C\K>;DE36M[.TVRO]S11QCC)QH_)M[V*?"9$##F<50)67P>
MC4Y=?2,GFK\>G3@JHG)ND]NWP-N*0<,'L&* .HV$5'L?RU0_I7#M>!EJS^H&
M=Q ?$:NWRO1"M8#O\7(>#F?:ML0V ?<5B>ZV:G^$58B+5=C*55!#RRQ;)WG6
M*C?I#P=1*"D)GXEEX 0#,Z\6/1#3Y^Z,><]<\\74+;SUZ&,=U^X6=/3E^DO*
M$U], ?4AV9-X??(E%:D\1\*0EL)30>E+@#18-W/V@]5G[=+S,2#JXC4 R 8,
MYH9_8YZJ 5. ($\HH\DO,@P7QQ\M%=>UQ5=88>E"LL0CX/%')&_=B&">MZI1
MH?.S67APRMB&6_H8@%4PRD#G'A?24-)"!=ZFFL8#3B^#2%:F3H>_E?NUM5/+
MKZ6A^:OO3A,3UE^>L;SHB2[WRH7V)2IK=$Y2*APTT(M7ZF,\UW*]#GR:C+J_
M"F)$4+-X79F;O!9U"X;QE/P$AYIG69<\7=-G-M>+S3:,=]0N6D99['J4)4.K
M;+T0)2 G %L9._WFZMR6O15Z^=J?:;BZCZ59KK!@%O'B8\-E*Z5[G]APL..*
M$KZTL)F6L=_3%.XUS7F]E93\+#@N+)_36(DG8%C';TE^I;R:>JI8B*>UB-]2
M2":G*QD<?.JSO9CCT6(O6N '@U/6!>$R"OJ=0IL(XA8]HN8YJV9R]61QNFPN
M6RRK"5V]F9XPJ<L\WY4R&05[5(QP5+QH &4]OYXE:1FO6!GFM=H/\S)AY:@\
MI_=/& LLHMQ6193;BH.$,263)'0+ C;[22 $:J%A3?816T^NY>4I+*-B2=12
M?A53%[=T,:&=6+1T6>6Y'C[ F>D+T(O6011D])II#JLJ,,\ W;>RV<L!"(Y0
M SID1:.WQ%VQ5]\45WI4"D1%ZTF EA@Y>PKH&CQ'4'O="XWIQDB7E(2EDG\$
M;(3M'-BVJIIDI7(1<);\DJ68$[?HM:M*+B/]LE5!Q3Y8FAD&="-%A0N+2FL9
M57-6XOBSVRKFL".?X^Q/5/[I\/K'=3:*H(SC44L'!&Q,A,EFBGL49V1'B[_3
ME4T[A=T5T*SD)>?*4/ LQ1*#AXU&_D2+O]O 8)F(<:T _-#O/D'Y.16&>D2@
M6A6$VG+T99&K=.N]?&*<).RR-IV(Q4B3@K:+/"QCO&F7*^-J(ZG., 5!PCW)
MPY*BU_3^R8M$<L+G&(,DZ&I8'K4N1GX1M(X&@-?V\NR;KM0E8EJO6*$/N$(_
M?(4K)"X* ZE"!>Y<,541H9"QR9:)1,5\%]9S_&>[Z%4CLKHI_V<>47ED/WR%
M:],0C:JD1"_LHFFA1'6Z]7QD;)0"<WIS>B8.@64M<N1\]6<$IOT]4K/CFO\4
M1,$FWXQ:6D'#<A#!J)EJ?CY.R)8-P4N?X/_A;#Y[(9S*TVA5^A:;?)D&JU[F
MFXV78!D*F,@"_Y<H\\%H+L7;V>+I?5.+)!6*L8LR">:9PW6J.FR\ASST$K(J
M,G9A:X&?QF?/51SAZ@'4':XK_"]JG6*^"US839UO?2^28I(0]A05RF =T-7'
MG9(;K&:7V2E!J]<^P751$,KW=IFR YFTIV8QVSN=+I9+T8_%D*0<LXEUD10]
M(?C@31+[E*X08@E-$4+&NG@%BVXZV( EZ7*8*6[D$*1)0?N(V*J4(E1XHX(D
MG 4N0_*4%IO&@K)8<UF%[28. Y\=J]%XF$HE:*7&FR3/=N<DH)A66&P0*#I8
MM@C7!Y[AISA<76VV2?S,<5O'P*X4!(E*T3K>BCD^U"]4,A,H9"?76$$G!7QU
M]N8M(SI*IZ@U;I0:\8*(<: :V 2N*(L,5PMYD273 ,G]4T(IUCMSXT97HI"$
MV((<VP^'4,.?U)&/>AD*$><K8[\VW&=B%F_63.0VX\3GI,@&:=GRG(Z9KQ0I
M^3PMV[G&3%03$I&.16P!WT]RV-L%^.DXG&)!KP+Z:AVPV!@;>D)S"<I*MM[.
M;D$:;J\^DU:#43DSPL51$)L@8<;(]&LJXTS)@U* ^CZ6=1(@N;S$$+Z/P>3$
M5+?G8 5*_Y<4=EU9,,K/@N? 0!$]92I@]R@F@_YP'8&9_1GM=7)28!5X!_,B
M0?2M6E.KF-LTI?AFL)A:9+R^HDFQHA'-"OSE&']",]U664X%>K.8DP4P3?YR
M)/&#J,*Q7-_EOD\/5W^J3W-)$LT+G*BU-]H  Z7Y1YVX(#;C>5?L.S6K/D$)
MF(\[I0C,94+_EM/(WXV(,E)+XA3TK <;R=(BEW%"@\>(/^C^#FN4A;BS?V+/
MP?5P*X<<8$'$$$2.091!"(PB[MJC8K96OSCCV@6D F<*CUYQ.<[0DR^,KDKE
M*PEH*O!,I3GV)@E\>AN'X3I.H.,,X&BUTF%RVD3BL,J)$YSY48#4VO\*K<BU
ME14KBM78Q$IXR$H\WK%E>" DM:0VM2 F\M#O8Z8B074PL(JR#PD D[7;PI9]
MLDCC8EL$BZHHDR'+AS!XM%P(<\(U4;<SL/JBL,KN%/#KX3_7#845CGL1:A^A
M>2Q#B:<C; 6W,K,2HK3SH5*%P-41-$E!E'"J%M'J2YP]7E#K-,^>X@1\ZD.#
M010<P:(89DGU*%BI8.X7B(!%Q4MO GX@@MQ+_*?3:'4. "SQ%D[=Q2N<IZ$X
M%)(FADHH5(D@>R3<5,(H2Y96)>EC847+76__.M8AGA1M4$ :W#U1FOV4Q/F6
MW4;W(RI]J]52F1@LR!.D3^0 (OS$HEP#MB/VW2HA8-=!1+%DUX@ ./QH>S%P
M?P;2!&E;Y.HZ9A^')AN0%,="U0"M$ZSJ -2F0>,V,G\=(K%2,K;(X4II%##Y
M,8HSJ\$5)ABJ8/MK+$&P(/!@&T!ZK$6:^V GT5A&S5<S^M[=7=S?31,@)H'\
MEFM%?#$2]U9 !,9KRX#6UOAJ#GP+%.9\34"+;,(Y(A? &EV=([C*#>:ZX.GF
MV:<ITW.6:ZRD-U0/1O6%#T+X*(0/LY#O9SD4\&^I-.(D/.M7W%7#5T6-'X$A
M_6) BQ>)$D&Q7%<#.(9>A I18&\O3F6&QCN>XK1<"VU*J2R"*)'N#*5\8NC<
M$>JEG!ON%)S=VU_/2M0!%!A^IC( >%$81W@ZWB1JMP$I1]>V_^O[[]Y_(%M/
M"#[_3/[I_>+]>_S_?4W\G\EO?K/XW>_^<?&[][\M_EJ7*HR2.FO[F]_\;O';
MW_^3TG8O9Q8?&E&LQFI>GJG5K#7"B&>#7^+SG7LU<;2%B>D0!\TPI29IM[(U
M(:;@6,Y4RT4K3[8K(D N)]3:9KHW#Q,99R/C*:V"8!$V(VA:].8:XT/],.W,
M',&WJ<>WLY.^JQCXLB3W,Q1W!9#'Z$QO28]<B^J[%I/-3# 0ULU=T)KWS/=1
M;&M8F!*SUA1+.DIM+5.38M(:."6Z];N.(\LWE @"OBY+8IN)9;Y6:VQ/%<H\
MGHL*+#"RHI0+/P8.]DO83<G'QSP-(IJF3")Z"")4#2&.]3$"%>5J!5K:.O"4
M?)"_Y4%"5Z>1RCK[6[ZA*^&L4/P) S>EG!119K4@Y;R(.K$R<89/#94?97)$
MS$YD_,-?E1E^+2NKN8CE.E13]>W$'XB#<1FDOA="0AM[R494<)5!!YP>9LC!
MVXCYX%-;448EU8+R<?* !B-?H3EW'FKL8K7Q3U*(M^ZJ-_1IE'N8\_;0F[?I
MJNB5>06C:^=I"1:SGKI>QA!GC5X5D;%@%3] WN)X/:<!C"9!M]AA9B)@RLT&
MRP2] >PZU\VF_*]CWT%E= 7;C4] ^E[BA,@I[)N<W]H":1<IMX<*TR=8U!_D
MNGGEI-[:"NAV:+$&54>4LB:3+(6LN5;D*(H+\B.-Z'IPY1I)54FXE#<O>2=(
M6[S!##.E%\?KP=EDE?(,,:COS(+%0,DTM>SW-O6E:O-DR;L'\6%X^IQ=[Z[9
MD^3F %DX.$[/BSVXSM/5"F]H+RSS)XS$".WEF-Q2R#,&.5 %U\(XNG=!1'9,
MJ[(I%1[)$M;H.G8!><O9*QDTTP2DM88)CRP=T1XG/$DE">/,N0WJ;@AS$K$:
MI:QG(ZR+#[)0M9+I [K&<ZH][WNA7*D0H;=Y G_*(&\>HE@]516#JY*'8UB\
M*\5-<ADG<%6S!>!E)=)@)=3?PD/'2QUKJ )#8S/%[06:0SDJT88M/8,+4HRL
M(# <^XK4NG+EPK!] J4'XQR#_,J1K3.=,JXUU]-(+*8-0/BE[+D*;&),CIU[
M[>Y,<7MJ!"V^(/'."[/=N(>0TYCBO1LS6^UE$U/&B#(46!+VO$56*^".F;NN
M?*JSY^(65QQL1BEA:"._#&Z#]%?V6L$OF,S]87!PG$*2 ,T%*:D>!RL5/RV_
M<Q+JT^"9&RRW!6T0I/V</;X;FS$S)IFK[#E^/M(]GH#IQ"ID<RN4W\?=)^^O
M[,4$9.41."GE*"=-$(;V*S19950W^Q3<AHZXE8_=1+@&8KA%%;)@4:_=E@KP
M$:] EZ2757/Y"_2&CK1^BS;;(,PA@+[$B#=A)KI8KZF/+*\$?06M_QB8D1X#
M.?N2XH)(YB+"=DK@EX4L"X"52>PLYT'J/3XF]%%D[(CW8DRRLDZ2EY)#HO83
ME''='KH->0]50Q[^SR_\Z& QZ;1\@4=6S '*)-TR_4]]@]_X&F@2UE>Y N:,
MM7S]Q+1XS?5T&IE;0:&[BK9Y=L\ZC4))56'MD"(!DA9Q1A%F<"P UZFXS:!F
M*E/KV6V-.1I#7X4*5*0:WM.]0Q[J=DAIL)<S)<5413D7FV_)'!=9.WY_7URS
MBZO=[DVK8N]:TA!M3S,VZD..Q9SNXQL/HC%1X!H<Y[2/]ZN. 99W/LJ"B'&.
MCU/U WYFEU'B97'"$\4Y030GHSC*'FSN5" G*FZO5R0-L_50HWQ *V'4B;?.
MT)]("74CQEM;.\7Q?_!6L1X-P&:#.'\2[T\!=\:J+(4O8GC,!L<1?"='^)9M
M"07S&D>9(DW+&J?JX2CY"C6^K.[</6O@]5B$I3V;[4302N8XT4'ECIZ=:MZ^
M(X8NF^V6[&H;"E;6:H_%^O+'PE$U&;(':].E1MI@54V2[,7LA"F39OG51"#V
MC)]Y2;(#/BP+KX:YJ.;KV8_+%<8\0W&XPG\+L2M^F*\P,K<NYU!Q^4;LMA19
M5VH#UH\7@8U6$$:UPDB(. Q66-GI04 FI@"9:#,^9N0RA97UN;7MWQXYW]KX
M<4'+NK +1Q7?S'OJ/T7!W_)QUJF"'#G=;I/8$Q%T!?$)ZN&(E0,0.!D)"[ZE
M,^&!'ELB5!KB,6%)#H#.)"*'F*A,J"U&:[W?,EG714)C?R,-XEBE5Q&/*)Q!
M)04^(;A89:PE/)1,C[^,DS4-LMQJ*I?;Y53% Z3$UNG_BNC*-\MS0]+I6,-I
MGWTTWS2)_2H<NA%U!@=5*WDRF1EV-BNJ&VQXJ?))\.9J0!4@1&?#:U+C:J!@
M?PLKLEPSAL%4F"*3/P>/3T8!*2HC%VH:#@ZG30Y?0(S!%"QN#_^)KO*0\7VQ
MV8;QCM([FCP'@(I>NV]"]MP700@2F8)?&&=QFJ5C0A(ZX0%$[L5*X)!O W87
MP?@+PD.2)PA=F,-R:8G,8D*P=>24B)@3:7H>V'H5$^.1'P5*"I\;P<G97T[
M#B_3FRX]G_(/.::*4$D/@-W9*G"2\V="LW4 =KM(Q9[_S'5Q_H8]$GZP!50B
MRRLOH?>*,I3C, 75!PIM&,*+]HYR@E8A+XRR$JI<J%0=8#T:^CAU@(_-;%D7
M5&N$BJZ\HL^%1<RH1-&4:K50<ZW*L=_(DNB796%J],O%F"K%*H%=F.UN&(%,
MX&UA'N?(F!A)=T&0<H%!QK-@)PDZI=N$^@$79**5"N\^^'TN*4*QNVU(>95-
MQIM*'O?K-HE7N6\;>\08B^J&5,DB<YY"^#BXT0S&@[Z:?5M!_I!BS=WLXAE"
M_<<&H17D"*<WR2'#MPQD\X0^L9<K>*9E.,QGFBW7]][K#:PQ^Z0UT3$C>>8O
MJ3:\'BE3&('8--A-Q"?2$#[SEM=K7S;TM463DF((BV:K KJB?(JX+Z:M2<4S
M\ &G@,<O#=(JJP&O4K%<KNNR'G@ZQ"F ,XA8-&O*X@2\RRO@:^*YUHHP#\9-
MPJ VA)NQIVH@^&[EG-0)Y6-A9YL#]>")E5#+WWV-J]^B"DVSZE_5HM=7)JA$
M6X:EFAE"845VL6SLEO0(>'%F*'(I]3V?L6^L&KDR!C<UJZ-,7:8<Q0T1>C36
M@L!%ER(T; *C@)'9[TM?2G219[FVF!D.]LQ7^Q_!FL*$%\Q]XJWHQDM^'8:1
M47GU,+^-XQK!C9H])7'^^$02^ABD,D*6:0T>R>2PH"<\>D$$F+-,2<P@V8"^
M^F&.\G.>H@>C &&-O U=D'2W>8A#Z,%CRE84W1KLYS3;A=36 SARJ<19*ZA8
MA&XQ,5WU<!6D;!\GPQ4IQ)%R4I?"+$-[5YUED#21",2A!L'K5+YN8\/8!'SA
M-)%JUIC9@]\7@_R#@&>TQ]*7N_L$,W%W'X,P+%$)QA_S+]_=?<=N9DZ<L!T;
M6GP_S;(A]M:7.R*I$B"K@#9,@)35$AVN&D2%,PJJ35PR<C82-7A,!(*'Z*98
M+'$!HQ[[*JC[]H?W/_QV+OQ\9A?*_0L-G^DGIAT\C4J5PHJ=[Y("7I>)4Y22
M#=*UZ*&=EN'QVWD9S3A.#I ?4!^7'-S'\*N+5YKX00J:N\13%G#*XB_T)F$R
M[9C=PT=&197*U6/"-D ,U1>'_?LB6HOQ5+[%A?(MX->PMPLV%D0R0B2ZMF2%
M("_VOA$:A=@2WX(V%XX,,-$M9A#'2$N,YIGSH(,Q R%";4]<C[B2Q3YNO8P"
MC/K0.W4O[JVH\P*4$:'=)A*769YT*#W!1T*WXL1E=IG9UR-&VA(YD85+GZDY
MGIJ5(8IT+7@^"V'%"Q(.A\(%%,WP+1"+5DLPFC/%&\";H]7G.$KDC^#"2J]'
M9NC#'&18MG J5'T)<B:$^R/XX-A*G0UZU-*)TL>O-ELV;S@\RW55SKL "QR$
MW_\4QZL7ID@-!9PHQ@ SWC[@Y;MB(")'LED\Q";'VOVDL1V4;-LV2MOE4"V:
M,N##3E!\"*LE,/$0DC[C,'[<<<"U43:%@BHIR0H@MPEL"H9YTJRZ)3LGLM*$
MW;!RHZQ4<]+E5\H*ZG9JD%Y$&7O21N4J<Q(6,Y+'SE,#<K4]V='(CYJ6*/,G
M"\%@) :W2"&B8< O.,#9>H2<R+>_$-HN^ KYMV<(4+)I2^'19G!$R@0">(A!
M0!9I8.D=$]('1T*D^/ C211C)5$"5(^!$QV3BK,CHI3MUZ4PR(8BE'5\%>OR
M5S4<<:R*[ 94VQ07VNVY!\AH427NJ&E05C3X[&W&8:YT%W!8$!R.X'@$!IQ
MD)A@ 0XK[.!D%41M%*AR%H>!/QX)OR1(),5)#N0 AR)K.]+Q]KMCYV>\7PU&
MM16;]!+?/\5YRMXH]O[=OS!1:0=>X/%*+?MT_W@4DQ;?AQ$EDBH'K$*ZZ*.W
M'B%FE*%**" PEJF,99RQ-1O 0H1>KQ*/9W'$E+L4<1>^L'-ALZ)E.1:(9#C:
ML7*M*\3[]2U%>4M$H :7DU^R/DE5R\'NY>N1AO_1FN%$IO[I%TCS"(U%HYIH
ME4SF6H@P3_4/HE0=XVQ$*EI]KO_(#)<B&E8/D2V*ZXDI?VTK7U_D5"[*]@@7
MA;>\ :]YL!+R)6NOI#+,<UM*+4K,O"CV7=;B/+7L6#N*CZ%>NG*I)$:- L%K
M.T,&9<LOT3.:.H7ETXA(*6E*<ZIM^=@(#^*$'.7<M>#P"@,N H=XV3VFEHZN
M[-4>&B4+_$$*TA2ENJQRO%^4D2,3R! J" 6#PI1/2LHFPAC$D;V\UD]>E*\]
M46D;I#MV 7I1:NRJT.@SOICX2(L1;"6(&6=*;%:=&92%2\JV+Q+C3*G[L?4S
MV:\"BS7D!V>754K'3U&V=N"$IPQIQ4WS.8>=L5QS P3B1"B L2//-B<.=Q:W
M+) 'Q*%00&-M'7"S;(EM)-A9KH7I2,!J+&UBX%K@1C<2%6'LG@AC%Y\J3[GW
M&]Z7'%T)2EDRM5H9?M/IG'S(O3$_Y8)_PYE/7[T5CF*^BJN[<<VM.[EED8.]
M<E*CGOBB@$-=-2GK08:&>=)"*YH9<P(&,BY,1,?_\#7\CW>064P^O+=HZ#;(
M5UC/DD;3TKMSD\0/0L^0S\0-:\_F@&%01N1_98R3%_D6;?DHY!F&L24C6.%.
M2IP*5\4+*ZC+:K9VM0$KW.EVJZX/-ZF1;VS,1)UA=)JHB1IFT"J9!MQX&8)1
M&_'<C=I\E3&(&(2CQA\CIYJ$)-GU578]A=U$L.O;81?/WW_0)+Z)@RB[AUSP
M.XA3O"RM0]S3FT& QQV-@CA!O/CSG'+?OJ&0!9@#P4D0G 7!:6"XB+26$64F
MA$^%<.QZ-AD9XC!AI(/395-WT?OO?OS=;_Z_YN59L>6Q$\*B5-YE\M@=>RBI
M 3AJ@0I;D)OD:A-'^L9+V,=)O"CU$%DX_;A3_W+Z&@R]VN3%A7281L$FQ1AC
M](Z2*=WZHW!FG:>.0$QC68:=8:A3)QI:YKM:V;8[ K4A(6^J:K?3+(A:_W;P
MDDQ8$]?VJF@)FT/7PWK)>[MKH)LE?TIB$%@GJA9<5QL3V5+" G:(F#P64ZV^
M&NBBK!(JPGV+GY4:(*#VWU*?!L\8G,$AG,DDZ&P3+) 6B)9O-EZR$Z6M!,/<
M[E&M?JL764WU=9U6EVDHEJ($SZ5G3_#/JXCG*B[77?551F4"GDU>2V6FB]*J
M!S>5WU&#'B%*&"<)'A&19\KV9H_*/5_=6E=*B8GH4(Q KM^-A'I)%.>VXA=*
M#'Y-;C=<8*$BK4]456 T1^)@O %.FHHA3,2./)0"/88'!VWS#!32$>JM0HX@
MO:DT7(AP$L$>8(]#I*Z4)L]CF-&H3L.()3@[Q?G.7?.3HO^1=Q^^/8(BV;;6
M3MY94X'^:56?^93-+WJ:9'_!"L*C[+U@W O2+/"]D*A7A[T4UI'SU@Q>*%_9
MFRI_<3K2K^IDH0LNGXC-,U9H:$E(XR=ZT24H$8&D9\LO.OT:%=NW,UFO45@7
M$Y!'_,TLC9:^WI3/M\T3^$L&EQ9$!Y\^!QD;'V*E_>_Z;B=[+\EGFIUYZ=--
M$C^ST5<?=U]2L!\5V*.G$.B,>1=# _,HVPYL!"*'@(O_W1<>P?:M4A:H'.D8
MN56MA&CL(SXPO568+@OJ>A.P.AC^AX-8EH'T*>;2W#/=5+S)IX^/"69S7449
M.V=IX*,%D#_4[B0&41%!F;C(:LK8U$MYHI@]*:8O42<Y!U_])U&OM7*U@F*U
M,'X$[CG(?$@"E,CX79=#7C1YMK2, ,=V+E[L&^F[.6=S&YJ](FB)=PS<. 3(
M693$1FAHC?*C)35MU)QK9$?+VF2ORF7C'01]2Y=-9/BWR7-;S.84 8ZE 6J_
M_L_UT(SZ)C,AN\UJ"AQ93IFWQV;5=OC&V*LU*#KAL2DT7Y1R'<.8K 8K(J)_
ML!AI86CV8M?5914(BK-GH2L[0I"UYM"'5_>&XR>JF(:C\.4$/17*< +@- [.
M>.>%(XM123A&I#1%%L?8>3N&Q*SDGGQD;_03%!T<M85J\FD*PI/L);-<51SQ
M+EG[F <AF*_AM%]MP%S ?<$88S/8ERYHXI%7J2X(TCT2=O3 <4'X6.:N/"2=
MWV,"3'\5&F$T8ND>[L-$8)RFV-#$+$>\%(#:BC*?%K_\.:")E_A/XQ#R2U1L
M4A#DY5).?YD*BGZ$EU(IZ37>E2L18VA)M,&%.W_W[>B%,6=U+>RJ6OTU6ZY8
M)?T""I32<\K_>Q6A1;0L]ZUH@,-S,I T>2<'^18"S+A)N1Q(U36/DU_UD%S'
MT>,)% $K0&RLLE5[!Q:%G4:I#6HUJ;)4U 35:RVPI'ZA6KXLPE^O5IB6YX4W
M7K"ZBLZ\;< DE3/T<*+'=2@,=D&8 &4X6H(V1'VB_Q3)'Q-KU822OCQ.ET%B
MBV<U9Z0_UQ,FB9AG7/.2E2P#7. )0+/P 2Q95>OCB\OX <@'V43!.O!YF$/J
M)_'+2%MY781V)="C,BSAXQ[S&A0:]5?(>VW>MI*JO=CCF5KB62G&D&]R#!I&
M^0=DUH0^,;$U>*8\B?::J=.7<4*#QX@CA/H\#S3D(O;JKWF*?JS/-%NN[[W7
MX54<Y$R$2*C-A8B,WG<PG6\71,R(R"D194ZDG!03G"G:"]G$WO0J[KV4UI=S
MPC=V+LNK/LKJ GD%_3>]"%J1QHG9'ZO@*W'-MW$8LF6"/\Y RU<F1OX,4R-B
M;C,V(YE9S#I;T@3H@NSQWFS#>$?I>9!0/XL3E%;Y#(R /'T&846,0>0@7$07
MW]TRK(@-'L76?Y.\J3N1T3_98]!61$Y+O)&)G+WVZ"J[V6ZF62O\IF^'I=[Q
M8/8S^=3<1"5O#3/A2IPJ(UF7F.6NYL;Q1'\%DLL^NRVES@R6(6RM<>:F^)YE
MQC6[ZORX;TUH45X1Z0YR&7Q?=0.Q6Z"HSGN4*U1;MJ8@,X&/\/39"T*X6)B\
M"M%(=V#L1W\,>*P_>9GX"5 _@F@9\1*'TOLP#DX>:2/"1QQ1LH,RAFSSAQ0B
M%2[2+-C@[3=%S>5I5T&<!PP)*$=:D&(6)^LX.8%YJ!6GX7+@*\9:AF'L>S)A
M]8YM27:'% MZCE4QL"PDFZJ]55.KY40K/ A/<;ABWYAGDHR$JU/#:S$OEV?>
M3 %:9XLSS0EZ=?KQZOKJ_NKBCIQ^/B=W]\NS?_]Y>7U^<7OW#^3B?WVYNO^3
M)9FM>;N+RJ)<M &,[E%^WD]>\BO-, 8B5?>Y',06V*AU)J5Y5@Z!525@$/T\
M:WPBY/DQ,EO1GW2F4Z_R<;V":8!6Q=( UFJXG/H^#<$7P1YFNF5::>"9T7<5
MPF2E4#X&/L)]%E2BMM%;C?)2W7H-GV7Z$K7X(BO Q3:*TXI77QWE^/C4L:#N
MDYR2?,NSUT&IE3#,(FO]G/H\2NZ']S^\)T%#LOOQK4)["G_:D,.O.$'MI+E>
M1!D(,ZL5:Y/>L _BA?\1;,_BU5"1EA,D@N*"<)J$$25 U2876(@-,]XIDW\]
M4;=Q'!\*31"J/5GCTM+5J<<=*[#3;!XQ%SQ'7J"H<@3%$*+X,X>V#M@@A.(H
MMMYK"PRJNE1)6L/L!N)">3@>OO9BQY6OYG'TP8:/9Q'9+(CB1!XUP'%ZB=@L
MGX)M6>_PXPZ"10&),PX9B4?>9.CCF#^DP2KP$J;Q%F,I-1X71!^,-WH#_%=<
M+T3E,2X6HJ@*N0FB8)-O)GD6AP)OJH+./">Z%_Y: %!H0#L!E]5 ]['Z/M<G
MHRAW"U1'2,$J 2%93 &#5^H^\<!+?.[MTJ$?:B]111ER08I!B3(J$<,2&'?*
MZ'0S9=H;0O"GJZANG+&**CM1#73S;&B0Z+T^DO44MQ9?D;"T\%!(7K$3;+!8
MQ<2&LVQ1(A6J0PO++PY[].N@[F2F$_[&'D,%@,E(JW4)R3*)I=J(I7U"RWKI
M4V_;0?"P)G1UF@)F[W)=$X<\%F-'];RW.V6)G WQ4L00ABZUD=I3HO$[7\<F
M<)2K%9,:@G50NY3HQBD\>U]2NLY# E.?8Q9D)QS:3XQ$EEY%W$@T>T@Z/MU)
M'.8S77)-+H+Q;.@B:!&H/906D*6:KJZ)X9>LL:O)0>3-LMDG1.BM\*I[!-QS
MV_O22ONER]/B>I)%5T]Y677Y]YLD\ <'#/9X+=(1050+4I2J%;,N6A&<]]>Z
M_NH)+>*S[/HS_#C9QCS1#DLVGH&FF^S&NV<TT@M>#Q(BK\0 EEPUK>7EQRHP
M317FI]'!3'*D&_ZC> .">FS!JLT3!WZZOMILV31/S21Y_'1-.#UR:COE8>3,
MQ<Y19VP]-()CLK/C9R8:0H5XG_O<Q7(?U9PU=4&=N$T'AJC-RS4A> GC"',K
MAD,Z"_6PI&6_YHY)+K27=W)6FHW:955"2WZ'<H C8:\VF+U@)YF G88\G;+>
MPD@YHSE'IQS"JLB!]QI/;+[W7LTDQ(FL=Z1G.5EL[,S+DW,L,]8BOR:9=GFT
MG]DWCI-="=(^NGZ\H*AAT$\@8 ME+[V/A45;&K+I* !321;B[01A4E*V#F)J
MFBLM<Q*JPEBN^,J!UWF9WN7Z+GCD$"U,*>=7/H1/QF'@FP32%T6!EVNBC$?*
M 8D<<1+0>;N\2Y//U\1S705HYXS;=VOP"CH-=BOT>4!.EY&TNZI];Z)Z1,>X
M;)-[Z$01RC9K+'*%&7Y6$R/!#GD=^UYX\\04K5'HKTB&(!WK@*TW"50_RW8W
M(5Q+$>Z@[0:!2\==PI+P@B#I(A]QRXLC37+]F&=.O1?FP&$9\ LY;.R-@8C+
M,<6L/!Z3P(-/YUYI6($VMN6YZ(U._=6MDKF[OAZJVIE;[:<X7KT$83AP063W
M^4VP"NYG'7%OW$15F+S93E6]*^;[Y=6X8$G#>N!O8=->KD&YO@SCE['6Q((D
MO%&HL2/524PJA5WK-,^>,*ME%*I/:=HB!<$)L&M,<5%OI9N4E9Y0EM,"RLX(
M)]8$/J?*?8S<^QKWH55[GVU&E5MQ\&>V?HT6-N2Q&EEIC)Y&-QD_<?V2F7;V
M^Z7-=D7YL1$*5GM5,^NU>,WRU+]<FV7&F$80^<'6"S%[=%2\14&*Y\9.4)G$
MQ.1UNX3&@<WM5!1IN/&298+2&8=^D(%=(^ YRW(4-QSFC),79;.*L+6C8J\*
MU2ES9!=DZXGT68M!=^LU]=E+>?'J/X%F?LO8648@1</_@^6*38!7Q9'EX^$/
M&!2@_D)IR5[%,,?\V2#=QJD7_I3$^9;U '<G0H_F[.G>"H?:J%I]?/;PZ,KY
MDUN,PHRX(H!HI_ /97K6W^;C6]*PUVHN:I:RG+%HPH,YM%_J/0I6B.2%(#/8
M4V6'E/S\_5LUQ'$5'XS*#P:H3H3_.X4/Y\MC@/^@Y33MK2D3@TLQO( YNX^5
MJU.@ !J+\/V<;V ];<3W3LR5.(J@2FC:18EJ"6$6ZE,H1ITB4EN$\JQY;89;
M"E62P>H,)^C^);Y_BO.4[;7[%[;!=NP71N)SB_%((@<D'M_UV0L@//%!V0\P
M*OYN@^/:@M^QO@"%:B89+P:"^#APY#/21 Y&^&CX._MRJ8ZC(2%<X-KDDE")
MX6(*.$..@6_10@I\Y3C'R*N.3)-!E%0!0P,W^#'RI">DW=$HB!,-7"D"1BT^
MY:*PPAU-G@.?UCO(/L-\(#H O4PI2H+JWP'=DWV0/]'LEOKQ8P0(G#R(X#).
MQ*^@W6#\GCJ'5^D30R@F/D'I!T/,4S8ELF-/0CFIA8AM0 0=96)?Z_JJ)^I+
ME!3$T319N!\!+7%!7J03T1-.Q(2"51IDTH1R+"( 8T4VR7:*).^';D?N0X,C
MEP>[0!R#0#&YC^%72K&;BG_W5C(+92! 4,B]\)XFFU%++D)NX#FB$DV%R2FP
M%YQXQH]R06ONB+'.<^6[7"C?!7ZME8>J\:P7;!&%+P*,30'',3R-U50AD?$Y
MPE.65IEXO9I@2_A://1=M <7BZ8@L:'L)3"O!D*=ZF*/"I@I1" AWT748@4[
MLRR%^[P@U1(=S!J JQV&M.*"())H<FG*OY,E\31-LK]\\EX!67*4-BAH6%3Q
M1L]4KUGP:A=,LQO044%QM SB. UP8PWL5"E$2[PH;Q^U*EJI=3C2E/&B8)$,
M79LZZ*Z%HJ 0=4;[&&!,(%&Q2<2T%DT@8F]_6?=P4RV%I#=5I![,LS!E1X_7
MD/DJ_[X;>%7W*6,^<I.18L8$IURTV<EWS9;E<+[+WG*H[2_WU[/:M:G=Y?J$
MN#ZAI&X1=E3F\EQ%6Z8$7M-G&OXX2CQ1"VQQH@N"9,F/$UBE#?*CU9;B#%B,
M92NJ6T/ZZFJ%MB\OO/$"]I2<>=N R:KU]HQ;::@2YCAN1%,L:&-2M4YOKLX6
M]7JM:JLLD!?6B'J49M,8(N>V:%K$H+)R#P-7SGJ PMP6L.(Y *>F6#S->$LY
M"/($MXAX$+2'X!/[7CE['I;PB+!KGR-C?([!ULQ_Q*I@8ZQ/ZAU:#(+/JCJ,
M/0,)*(!%,891<>QEF0G[$=^C@C7X!MZ';Q$A'&I8" ^V&&I+,18_(]P^-:@W
M:FR-'L##I_ZU?@+U?H:XBJ!8NI4*&.0@4J8(7_YCG/QZ%=TDL4]%Y#I;+G;%
M#M;."\H+ K0Q%YI3+\+4Y0A'Q9Z6@L^HG@31R9;3M8HP C<N/ BGOI_D7C@V
M94E2Q/TF:4Z2L,2?-JBN,TI1E(6V2T+SG;)Z_KGU-RIH$0^)VT>GN8P3W/]T
ME5XF\0:S2:[05PZ"1(%Z-5*3Q!R50)(E7D'W^!BL2[M^>^R5]P'WC($^\$X.
M1-9LI&]%YE$QF(*19O/JUDL@()(2>XKYFSPR&7JOH(' B"+OBA&('.+;8^-1
MR_U%KLZ\)-D!3Y:KKUOB1ZL>=,"'LZ;&<N->$*]#^FHDPI31NF2T;..HCIJR
M-- >P535$R#F:PN\F+WC3%B748P\8'K<$\I(GJ "4,1C!DAUEAPTH$=SFE4.
M;#DUC+ 0%JN/4R]B?J]L+GX9/8,B.%7-/2800=7 &#&"7I#!*N2F<>[$-WIC
M7#5%,DW*VGX\5Z$["Q<3CFRR6I=B(1!#."J\9993W98L:5N5E>_H(QSZ6[J%
M@GV8]R5074=_+TZ9%*0UQ-AIOI-YYK035^70#@;?&13W2Z@WHNC'&59D9S0L
MU_4HCL-G.AI@&&U]\YQJ'8I#8#U.<M2,]\Q(P63S9M,%J_E-$C\'*[KZN/N2
M0K!1$3E@#)D=;,/H<Y!#0:SN.QB-<?NM$LHQ$5#[= NP!_N\1A I,,&0N&"[
M-#G]P2;"#8]$:2Y)>4O38)5[X2@GOXS;Z:B.*\>R;;ZPS+5^X>A,6N>1EX+S
M? SK.8TX<-'%:Y"![S\=KV9+TNA/X/9"H(ZA!18D'QOLA#TXL6WV,,Q2M<BD
MRAK'S:+ &B2EI1:+X<@X.#Q@*89I7(]$C2KB!!6:EB&8(#CAL[=A"L,G[Z]Q
M<I:G6;RAR:@P!4G$8I2"T6EK;Y3]N=<@KIW3;4+] '<T^W=(,<LH6JG%RAL!
ME@V [:GC+T@Q ^Y'U:JW5X"8%SH2\]M;K"J.JXU56Y +S!8DUI%7W:ZB"C)K
M9QT_TL<@BM[T4C8!*9I;1-MADE,O7*U#XAJ>V1.BKN!*F8U-RT\8@M^01DSY
M"8'9U8:)YBFB^3W3"QZ-.4[:$V,LB!B%;P)M'"('FB",W"K+NME+\/VH\.UI
M@]GCLI*^SHM)B SB5,D)1SRA@1]V+YN<CU*D"*=Z\CD.=:0<:^[.8^9#N:^'
M?#[[T.&%R^"VOCXAJFIFS-*B9A+Z@=#BLRM*%&8QT<;'Q^EHN1;G5>=(K<@H
M%.\)74,-MK[+(&*"TH3&SF+ F1@[#2Y F[%S7; ]B;&S"\*BC!O'Q) O49"E
M"!0A#Z89SVA7KI,2D\_+X,!$%N7MX,9WZF3)&B[*VA4J%LB2Q4YDY7 LLVV>
MW=)G&N7TESC,-Q0!-_,(T<V,6/"4T7B2(Q'CD?_F;;;_3/BP1(Z+R1>VPFXL
M<R[.Q1".;5MI+7.N;N]N9B?BD;T%#R(KF)WZW(>$!TM;6AD*Y3T^V%3;V!RC
MC3NXGL&I=ZTY1BOEYVIXLQ6+9;DBY0$8;-,4]W2*;_?VEER5O4A/O#M2A[/6
M6!?T7JD+VH:%IZJSSHJ%OKT/7(V'Q0]8D]GMZ1\Z5=IMQ8?V\$-3_J$#Y4/'
M90'86'SHYY;#&BL?>@\']!$_] H^]!H^--9>L.B9+2J7C8K'+<J?V0]/'35?
M36^8<-(=VA(J*^*,3*M3\D%GJD2:7Y8&O9&/85%15/PY(+:GM]2GP3.P,DJP
ME.1(26\"%X4I)BKUW";D!)^Y\R#,T:7"ZV]$PH2]Y@![*;K3Z";(-R.?'#D.
MH:)41L1?EQ1VGE\,1K9\-%M:CC5VQ5XLV!0509918:=?DW(0(D8Y-B[5S7K@
M%[433WXN=MEED$)Q=P%@[N>#@28%/<()2I /)&GO+E%26T8# BBTID$%,#+Y
M5FB L!S!9IVW,JD<ZJPS^?R3!VX8, O\3$,FI<N?[P !:%@2O<*FEEQ.L+0[
M",IR$#A%,.Q)%I\4ORM'MN[DFV0]0A-+<>1K4+$:*0NQ4?B'0HTT\SA,LAR*
M/+$Y@$8E6]I;"N&%O/$2)GTRT3GUL Y.:B['2OHY<0BBCC%]LI5%;G6K=A/+
M$ZB.UR-#CQ7-\7J*DJ_C)]Z@]TXR^X$8J!+$H18+=7ABVBC,Z 4IB]0WPD=;
MS7>;R6*JK_EE8::"VSJB$M"(>&+P22#Z 2?=B,E$+3F X.M36D2,,J1'6*@
M,/"AFLI$6+0;L,VY$JI3*31PV!:Z DD#C#\YUYN7ZPLO@>CD5-:T/=V A6"H
MI4096Q&@B!R=BQW*^%B"5,R@+.J[('P6;VR1FLK_0DU/97F86NCG8;$\.$WV
M-RJ7:<N6*;53^]@RFO8M6.&7ZR\I[WH,B/$X9;"ML$ES(L<'&3]RV5N>] F6
M^VM;;1W6HHH8G^#ZL%LA9S]X=M:GD(?SAY3^+6=+<?%L0IPOR!&D9UDN=N-C
MY='31UY?[YB6KM;QW!%A\-%8A,&I&F%P+R(,."-?]V<Y).#C2#]'8<J)=UZ8
M[43*T%#;%"<B4Z#F.EO-MB2F+.(V;&HT>YY0B)L?7R"N\(8F!6%$=X'W-1&P
MU?#O__IA\4_O?\0KF?WSQ]_^IOXBQ@;GC!3_[0?\[0\+( 5;DFD:X:0^[^&+
MU.SW7A!OS9:0G(9A_ +9K+RN!9.,@HQ ^?H)*@8:W0YZZNIP=J?(437&M2YC
M]CD&MFH0*D )Z>EK,%2V+"$2@(BUBHEC9UN/ZF!IRMQ13Q^RTKZA>Y38:RDJ
M-E3J-%RD6; !OX&1$-NSIFH+"U(,9#_:TM%"2*\_6#@5>]C/PJU6.!MA?8J%
MJI8"^0K6J1K, ^O5XH8L]U/=QB*T6*])@CNY+0_#Z$;%F0F;(,^ILA]@-GK:
M-?9,I&8=$%8:U3U1-%B"" ^4:EO ?'UE)*P;7&(M6RM299=9J9DY9K*^N.]8
M&U.EC.]$KE=#/&BQ;Y,RPG<<'-VK-,WIZAR3PWEH&E[G; ^"$9)B^>4T6*%1
M,H[ +1+GF=#8QQX[O/8"G !9\?1T#M*SX#?XPB]F 5NVG :Z1M@\I"KZ5A:H
MB(. A>$#DW.!1" 6AM>0*T<GVO!$C"]M*F]E832$1S8N:F9XD2E.M6V>P%\R
MD!NR)\K]Y + CK6%8@4?@SC=I5A-S:IX$''(!38RUL9Z9!UXS8[ASO."HBCX
MA31%D8ZC8$47'G1^MH*PW3IV^W+L:28=^&.$_48Y?@%VHZEJQ%CAL H]=PBK
MTT'*661=Q8L[C/D)<>"L\-]+I3\VGA3KWV%?<S( I(O--HQW5);A;7#_A&'L
MBU"5THO-7V$CH$&="6Y"&5F)%<3"PC '&<GC*.'-\>KI\:!0[+C&%6;=Y5-?
MX'G?9?A0=1D*[]K%*TW\((7OQW1/)M^E@8_'X,.H$G_"=4=+ZII;Q99S>WZK
M4G/&.I/CJV<1)B;33,&P6DX.I%LQ/5LB!^1)73 Q/]LI)J4]J+J!R\()$]6^
MM*B!IIM=+'!MI) 5R-51L=;- =:.,5EGN>RAPQ7_RI:ZDK6$1'E4E+T%06O&
M?9+3+UM\^*4SG[U$[XU@, %MDF]Y(8 R5@#HVPHK-<J.V/\M;-A.)S?*CKK'
MD*<O6X&"J?%D-?]OS0X>VQM>>$G'I#<69 C0F>^,-9$8PF*2?*/6EEB0S'N%
ME.ZM)VR890V-M17.<%L5Y:).5W_-TPP#FL;OJ8(J\4JRL^<@K$Y>H6C[>)OC
MHG+SUGX*"W<NUJ"+GVDR$K$6:4R"0=L/"MT^[/NQ<3@;E'=+["D:Q@%?T;I>
M<!U'C_<TV=RP-D],"0;%,,#C?.9E])&=\.4:_*3R[ZM1=8-@M!,8CDAZI!QP
M0>206&:5#5JT6DU0K >BFP$C>GC8G*!@+03-P$RKJ1$VI[N/]_(GZB4FT5Z
MGFVL%\"16*[14,++42EI_Z/. L)F -0HCT^ROK_MI3H@WF%Z%7$;KW$P1#V\
M=A]B%"=I,V'[:%?.G"FT,6\D4_)&%ASP,T4?NHBH<(4)>O3?KA96MQ5O4P28
M2RQY'K:1 X8];V_SB-RPJ8S5D 2-"4(U1\U6LZ1Q0C:%4;V*^$@U:+\N^A0J
MT2WUTCBZC).S)SAU5Q$<C.7Z-(IR+Y0@'U>;+=O)B)'*]O!@3"(8B6>5X%AP
M%>%= P5I<+P"#(64(Q(8THX )(*_=Q>O/DX(9(C!'X^3(I(6 6+V/EMS/>%4
M+=\F-!4C,":M%953K<J=U) F=85/N22ZV*,&&-<N ^QY\8>ZM;-9=.=%I#Q!
MJ&(21^R?/CZMZ4T<!OZ._^_8K<&&(>4X1!]H0?@@Y,_BOQ/56[++N0X]YJ,X
M5J[ ';AJF:"2DB];D 2L6JGIFB:)*(O#O<4\0'6PA5T0K'B@.=%C8$3WITEN
M4LZ-P%4-CH<;#>>R[=M,@&.YS]1IGCW%"5QLAO=;2?A8&.JS[[P)N)+YE@B)
M".K04[ =)_X7&9P:R2D2M\RQ4IN1FJATIPC3:Y%21M5+4$20#D%MPMH$IIG5
M_! SX)BGA C7[E7D&W'?%:YB.ZD:9N8LMYTR5]O^TM%SKO7'SWF1*UJ&W2DK
M40_U44UCLG@JX5[5^#K+J3QF6:HFAO3A;;J$$!N\JID@_;B=, /$+,/[V/G;
M@N%MP;#%N+S"+J=#ZRT?,B^(X!F5!J;+.-'!^&2 XFX43I .M$OR: 45LG5H
M/HM'=4*VI5D21CR)UR<%#".1HX*!LK#G@0VG"N%8C&T_8%6)&Q-!J724A[.(
MZ]4"TB3I"5R>QAG32M:[X@[,RM?TT0MY+/^(@ 6D0D1*@,TP@)'3_?_;^[;>
MR'%DS??]%7I88+L!]TYU#7:P"RP.8+OL[L*Z*GUL5P_FG(<#6<ET:EHIY>AB
M.^?7+X,7B91(2ID2%<KJ>9CIJDHRR*!XB>L7ZK+/,F>Y@5I>/8Y])PI_J<D8
M(]TR'2<I'XA%!W12,RZ"3P+"> [?C>\5<+HY90*Z*%/4C.:AK'J3=7-#E?87
MB #+L[=R"V[C,#WUYA?[5)(,.,U $%T\%^K7J7EXX3Q$OG@P57-I0<Q/4K>F
MC9E_%IS8J\_$&G)#PUK!8?(!B*:H@>A8JL$"HR[T;$!2AU<P.5E/#%Q.7B#1
M(EZ\YP<N>9$U.?_E):>/-<<_$DM2!ZKPZ)1,SUKU8;#F9A)>-9.^6_%+&F_B
M"/2XQG4';KJ8G&8O;%O61'W.%7VZF[$TSZ48S;?)T!_+\B3] 5@UE5[%Y!?>
M]TNZW=8LJ#8)3TT#KFD$0&0..SU=IKPB:HKC-+6"U;@(/H26#8H#E# ULQV$
MV3:?7H,<O(5K04P'6G16]ZLY=9W)=VN_TH>S=SVN@F8^"4$>8!C?0IWM+,B<
ML 1"/BJ>,F'!:3L3!_/Z?SBO*1-]:@.^3'>A7Q?0().$1&6EF'[/@3.3"O(=
M\2651$$7@.X$Y3G#Z9YH(WK9KKEH/$6A=5.PV S&URD8T3+**3WV4 B*,[!@
M3XZ[.EC2X\:@KCNRWSS;.1\(!PQD<).7Z5H4.KV$,@M,OIBR;*PR%+O_9575
M9C2, K+^%T /YU17 ?R*2PE:OH0*#2Q1CW88P^+'#Q__-_N^D#=#6.&'[X)'
ML8^=\4 73=T<=7A9_X+G+7K)8F8*\1<J0,?[+"=43]V%DT0,U20#1M-7/,L4
M,Q<?J#5CWZ%#4\Q</3XZO3,HVR>*IZ@_=+1@S!*5EY::B6+>^F]S:-AG\07$
M8?K7RL^W\D8%4JY+,H?-IS$&:'+* Z]>='7@HCU .TV#Y2D,JU3NU>4B12)\
M/@12 8!QSYIW@S%(YUL,UF9Z%H-0XT&^C1,RKEQA4W&&?LD Z'DO'ZC4C&\+
M@HT(/S)<H[91@G3;#057E9<9(C0 8+F%X_Q09X$+G&?]'Y26(S#9+PS0SLTX
M 6_"]3OM']4>W\FJ6''<NS6Z","O;40ECN^*_3:6^T6WD!0LB8)0$+%6SW4<
M[_>V+FT\] $GIN_ >$N_8R)1R_0/%QD8$!^H'#)2<N^$=JT%[2"GQ'UIDQ/R
M(RZ^CH]"T@R Z/+9<(;;:=_$8WVG^GT$.:J)7!$V-X88VL$*+\8B7[@A]V=Y
MJ:?4.$:H=#. 72O_>%;(UGX4Y6D7]+M?2?6.^DI*5>4-0D[=WQK(ZKWTC@!.
M)ZKX+*C-6,UYW/R-9;WWG.3BYVZJ0=W^ -YO);V(X0BO8*=TH6=7X/B).PLO
M>IZ]/[BWKQ!275#Y9'*DM[;VV$4X_":&UBJZ!'_^,$M1E[-<3549=:]G#4W_
MYY\OZ&I^_-=JHB)(UJS@0T<R102R?;G3^/3JDH4P?4A"RYUR-S4YJF??).@2
M[WQ(TWC!ZC4#\E4N*XK%Q>]7!_C_6ZJL9?E41OB"&]F5L9A9GHYS 1L;_A#P
M$5'",CTNA!;.1W(8 PX;9?H7DKWDX7X;1_2<DS"@O*N![Q+@QN,^4,H6/&67
MZS5+L@V3^S!>?TY%73QVBYPJH"NE&"#<KQXA@"$@JT<,<L$OJS/D5"L2YY<'
M'>EJS'O3P>L2=2+GQ8>;1)ISLS(G:,=$K.E('6[F9L7H&,V?$UOMOW_XGQ]^
MICJP %N^"/[7Q8</'^!_7=BUBR#-=!! N#NS6>+8)U@&%QA@ZP-[TJ(;)_3C
M+DP2:9@:EX3-2 62UF(GK45& "$&(2?QFKUE72NSWY(DF23MG5'RE^Q>IRB)
M%)4:.D7 7)^Z7YI$G :,19(\ R[T9+&&F4: +[PQ4^3E?SW%)83/?*8WW6N\
MKL)DA/6+T6(!\34U;S:DR>:N92W,R(#<29^9"LUR\VCS$:O?$.)Q2+XFSKR<
M,MF"ZCFP2>F@]$]%O"9<XQGI@&:5ATJH/!35].&/S0"^G- 3\R4^#5 -6"6E
MAFZ@$3X/=C1HG]YO-"M4%!A3()67>[GXDZ84_V&VEDF1L13BO&[FV;.K5P1M
MN)L#?J0 W?DVRY_"][_&Y7:;)2!YTW\PVV']Q!742--L"B19,XPW.J5 F5.P
M>D[B%\\;?(XUT3XWY?%-X9%^]5=1<,Q>I^:'6*(]_7BF*V$,WE[N6MR$.:CG
MQ3WAC(\UITIZ@(;#M_Y,"7R3,:)!7G6X\9F!^$K2BHR-<Y)D9BKL,V[.>D8D
MH^4!V6TJO"1Z.6Q(7%9T&.YBB;E04N,G+0"12IFC=#G)638857^@)=;*KK+U
M>QZXSL_CU]E[D,EREMOX[ GR9/TG J3I?R.P 2>)3Q,^%3/79!?FOP-+["]0
M)6M<:8J&)OO8[*^L^-8<Y2DF9:@ED'/"/$L;_I9Z*2C&],;[BDZ ;H9Q)0(%
M$=_)O.,FVS(]U)/>,6J^[ Q*YA/S\TV?_M3BJTZ#@OQ.'LN!E@PUTPJ(;?@'
MY%PW*FL9<)8%\.FBN%RO<[!>\/_<Q2GY>9RG0E"ZD'\(@&:P2GW"=X8)*834
M^Y64H^Y%02:X(FFT95>Z_W=IDOEKSBX@& B*"Y^W?AQXJ)3WF<ORJ6!ZA3,,
MA@L9A,/.G!*)?YCFH,N-E3<)#&N>H\R# 8I@3R=-H+BPJ'-%?RHSCUK<+(L@
MCE530U:.QLPX=>33A2CFH*9M'&;1O&]V^R0[$/)(\M<X(A9%($FR2(:+U1^0
M2_;,G N7'"!-G6K&[C5^BCA$GM@BHIAX@,3ECF6:_2>[9]D<OM_5TE'4^50"
M,9? II72):HGQ!$"ZA/(Y\1=!#.MX)2I06WAI(YFEE+% A/:.M+-A1J]+"=^
M5KENDW^&MF\+XPO\09?>6)<F4M<_;I8O](Q@N>B5TL6;N6IT,B5-P M\R5)R
M^$)E=%+>5NEZBDJC$CA@!Z2#':,=;(#X.;"2M+A@5 -.-F!T?9M[)F6G925Q
M?!R/%1:_D!"T?9C'YW1?E?<YE35^RV"3@XPZ#EBOH1TPXA<!(Q\T]&=0/[UP
MJ)ZJAI9'7;3:[Q/&0YB(".G'+2%E8Z\I1B>X*$/(*.R #:)8J(J9O+0^^6W=
M[/0NSY)XS9!E6VR3,HQ]0:@T&302,OVQ>OX[B<JGK/&VC#4H-UDZ4$F%!Y@4
M?!A(8]G4 _FR-7OA4MKX->Y$^,QCPUTSP#DQI^F 11GOV,9LOA3#7/$HE#D
M<L<4W757Q?9>=7=JKM2OQ @$UV&>'\"HY3G9=').%)UXT$?RBRQ%1:N2T+5,
MLL=X5W%9>QI<8B <,,I!0]H;//%D;$A9RCA][UC%D[&A(18;>?&*V4["/ +)
M_1-Y)4G&RB4K]L>1+A5.G9<H:>CKJ%'>Q5Q/3+:PZ)? *7UD"_*/B@YV\RI2
M%T95'V[H!8R@2&'P7C1B,CYTB%P<9CZG4;8CC_2V9=O@3ABD1^64 ,6@)AE(
MFC.DQ4S&B_II\!CZE23KI^Q+"*C!Y:%!VYT ](E;04)>/[1&\64![%0$WXDA
MSX8UL?<8&E%#["* 87XJLY_D0!>R7 /A[A5 )]U "0'PQ;PQ'1+B]Z]SLH[A
M0X/8Y W2BSW5EX!_O29W232)N"3(!7=WU[YDI+$S%M]*F:EO<6CLC#6TM&;:
M,ZBG8N_=$DB02I["=^%PO2(IV<1C [P437RUJ='ZQ6 LB44,%XCQSH_CKLWA
M>^74 O.2;8(PH;^!G^:5!#NJ*NZJ75"&[QAEM7A4P(B4R)]82F1=E:ZA+",.
MSH<KW9ZI5J7[&K[&+QF$I419FA*>4L<"4\IM#!$Y -NSNPC>MC%(]3D/W\G7
MA#W>N2KNKQ5QWQ^LDWK+4D7F-B'OSW%6'*;QL,@K%_@!TE>,M.?G;0(V6@^=
M/OV9WKP)V#"]?CHO/M%.LG4531+#)TCYC^(;->=$GZQ_K7S4;'5 '4;(U^T"
MHGTCV>OJ ]WDPL/; O2OA?W1R<V.B@^Z1O$=\6]6JIA.!>^,'%W$_HGU:1<T
M^'Z7I_5*L65RZ-+-[C%MHR"LEXGESGL,'6 N+^9-'Q,5RD,"ECA+[=@F6<&"
MF5G\ I6%(RJT46&*Y6'/&B%E@=.HHXK'&3[,,7DVY) &;OXP V+Y?(NA?7FA
MX\V/-*(#;$O_XD2:#Q#W[G6=DH.V$!:G4;RG.G?H25L#D"<ABJQR$8,]PIHM
M!3&XLV5$MV^S[U/.0I\.#<*?#*&$=^H+*;<GY$E;:KJ78BS?-Z(/GL0GDJ1;
M"(:2_@4OK<>'\).S)@2/P\\?GQD<V%@LM)\__O#\HQ2Y/!KA7465(RK<5+Q&
MME+@V%,4B3*:5D_Y+%FWE?><F4-V&CB,YR>6T<6S2MCIF!XAJ:@10\7QZTT=
MXI6R?09[S;<26O#7.\FCF-^N'.XGXV ,[ U18($4+*"SYKV-P&'9"L_#MX+?
M4*7+US!.P/,)8%!4^VK4QCIN[^1R"KTNUHN@"0[T6>/ .Z>U<5,,P?RF,(AJ
M*OA.>.W8HU6>BU#WH9,F^!-X9F#2'K1YD'.OMS'9T)<LI#)UF*PV&RJ=YA.D
MFP#9H*8;",*+YR%Q3M][S!TI29J]AI?/$T3:"5K!Y=5"9YMT)KKT]6W'E38S
M]VAKFS)5CJ7&?<W2B%LV>(]EY7#RA,UFCMZ00A:[OIUJ'$%2@][ZSLO48:&O
MZ1OT N4*Q@<Q-X2+&4(2E4HI]"W_2MY$D3\07O,LI7^,"*\8>[I9IR$)<7WI
M.LS71?!M#]E$WLT[7OG3G+5*\1N05.A0@<*X/IAWMN7QJE'J>5RE"'H9">11
M7SP-!KX(V_Q!#/#C++ =?ICL7BJQ8$Z&=/SH$9"E90V&^FUY">:2IRWM"9"W
M6D(5*)S,;_.4QR\O)]\YK<*2S)DA!Z;ZH1PZ:&63,9V:9ZN*\;^;A='*YF8E
M?7?+>A7V>L8@6P7N\RI]K0(3RAA3, ,Z-UX $&;69'NR2FHC)35U#%EE$$;1
M -C80+Y$3R]<2NO9]\F=EMN R6(797,JI- YD4$G! /U*(".G6\+=&V&&7\E
M)<2$4%'H-5Z3]=7A6P$. 2[P@L\S*N-7KB2,$U"@SCD+C9%# 1#Q#S :?<M_
M#.H!@V;$6006_PO0B:+:)-D;%4CS;$=9EVR']3@>)1G5\;*21J?TY;CH'[-[
M1Z$,+_ :I!>H#,=22CQ7PYB$+9/^\+TPE9CYX2*FY,=S098I^='O293/Q"6'
M+1W97TDG1AZGIM/4G$EA#\BB5'6:FB%-ONO_3O[.5:LB.J^&]RE.*OIOW!VY
M:LIR-A:1$S]@IV1Y4WU/^#Z5T2X",0] '98#G_U*J/Y>1AW2BO94G*=?GM43
MYP&6;$"/*+%JL6PHDCU&!]/+@K-2X-[UD6D8T(2KL^6B@^PT.Q_MG/XQ"GT[
MD]_[Y#^G$83 D4^$_Y>+[VF9Y52</CV+G]$*?I!4?X1\-(7PF?"C7E?]3'D'
M>)V&-Z,.,LNW,:%RUV';IU^_1NSMFNZ9L*.96[8D>*Z+HZ]ED>U<P*T_^ZZ6
M/BUCRAGJ_5C>CY EE^=T9Z ]=\D_8@G=,Z0HA7\(%-*3[VM.2>:Q7S#M=M$S
M5W?5''6TGOOK:#U;ZFB)F$YXQUM2]@,!;SA3Y/FYJ,($U*RCRY5H/CX1,$J:
M88,0<O#V);.K!G_^<!%\_/#QSW_H%:MUZNFJZRFSO@@ZNEX]\T"9.M/F?=[C
MH$XQ#TI'ASOYN64:FLB6X%0O5+WU/+CA]4ENTO7=0+;HYV7_E6BQY\3F8QGF
MY7!&KVK)XZQXU;79)E'S0F+@9CXWJ;"3C;OWH,PB\W V@0$-IKUH\S5C;@^R
MYB8:"4([VEHZ5?5+7O"2^VD5-D1T'S#2W)@U+Q<=4]B_OI#V0OWKRRSHRVBQ
M-/7J5(*VEK&3&ZMW>Y:\3JGYVKMV2C78EDSV"R5>?@I+,DGB2UMPJJOIDO6?
MKOT7B#W/!9Q.FK7>#Z5V/RC,&&1=QE  ''E-W:F_6;0EZRHAJXU(N/Z<;K)\
MQU@?98P5=.%TRU1NA;1_V^P#W!YT5)9[-]HCKU'S[;$>/_7D+&>MVB4,4_=N
MW[)GLH&518#:T+\]TBDE1(+<P%'5\&SHW7!"^'C;)C,#O-$2^!8[M8,?6\_I
M)WIG_ 2SN@@4+%E>P$]DQ/!Y-;!(,+/V\LU3>07LF+=)]G:3B$2"<;%K6H49
M9B,%XH&D/DN<F@_V=+>CQN6ZB4RE+T>:I3\QP"8E7HU^\(T,XO$;O<9DZYLP
M3ZGVJ\5LP+^1HU$S6FJC(*R':P2$D?8573,=,V*'2B8TB@$GN7@>-/  Q]?P
MQ$@ML:XVEM@@,:GB@3#\BJ>,I=$5\00A7K=UBC0'YS)'#[$%@!GP,GX<YC1L
M)N%KG\Z[-&(O-^(V+(DM3"R0(P</S9(H@W\7*Z*>C&EVRIR1,&/K6QCB8&8J
M"C$A+ST!2KA5+D9]'D=9B//B9V"M"_]U5?KL-H7-<"-L&LQF47Q..<1-RT(C
M87E& U_V&&>*H;Y&/EN(/^+S-1AA:BBA.; VE[GR>L$V.HI/RZ$!3> R73,@
M .45&ZE-F: 7F#K!QE'?<*^*E5H7MQU*XZV&L09X"R5S31!)Y\EKHK!Y:<1!
MQJQ\[(MK6RWD#KSQY5P%D@&/\9.8%4@7IUJ"! DFH7BT>=5P##4,!4>A^/B!
M3NDOX^H..# N@/Q/'_XR0PZK%PZU++4A _C!KEJ]I70BVW@_(OBPIN$MV)#=
M X"*DT9Q$HL$-+"21E!S4,T/&?FRZ6. FL9&X64'^3@R2V8.DZ&,AY9HTF/\
M2#6M&B][CK#^">:O"_?S,S$\OWB^Q.ISY+;CF.%/[%YENI),F]*J_;ZT_UZ%
M.=UJR>&![+/\Y/)]\M&MR06<GK\O]DN6K=_B)*%781L'6$' .+5DO>!+#L)N
MP@[\L0Z#08<*V%@>#Z5?IC65S<FYKSBD.I@ C)'T&!14+Y7ZJ_KJW5%%['-)
M=J-#[V24P6H3R"%!J^>OG7@%+Y57\#]AY( -[0W5Q?LB2*/('Y)Y+?]Y62LP
M6QP4/&W<XG,NP4[L?13VMC_6PALS!INP//*^!US,/T7^P_,L,E*-B#&YC"3$
M(J.[_AS9'";XU@-Y%7Q!!KRARG=YN(T3D@O,T5,303FE@)$*)"UO"K$,ZV6Y
M"_1ZIB>*!0;2$\#^Z1O$^4YB%GLPAA SF6C?#*K^YLNC[97KV@Q0<\OA&.'I
M4X81_\H&\FW^],IO)S)39?I;_8DMK,^98WX917E%5,SC:6$!!'T5%/J\V!N
M$F#@$0$M8#RK+? HP96_VL :-"X(1#G9TJ'B5\*=S7=9 7(-B5]2;I6*#D]4
M4BK"2/C?V-\2+D/5J#7T]5MMGL+W47C!VFQJP&"8T(],9(0Y!7)2@3(K=JZ5
M>2GX/A<!/,S9!HJ*?^^+J9Z:>5;4^XE;QL+J9U2N6R37K536*9P!6>H7 @7'
M]]LXZD0&C9(4&KJ!"?3'NV]J<KXTTY>+.<\8K%_#'9D YS9@=.8"NATQ:2/0
M+;M22OA;2BE[U/1L<.^G*G8N%/LS8*/[*G30ZB^"E'B\KZ"(!UA>2G+YDA,>
MP33J-#0$@X;B#.=B.D9T\/CT)\E.6-/UQ\5XM6,6O6(B]8%;GI(Y9JQE3=*S
M6Q[N*:E2Y%'O=R.=WI+H1<#(ULGGC/ ,F'R>N--*X>*R^"6,MG%*\H/*%"ON
M?&H]+DE0Y\1[Q>CI&-&R822ELYBX<@>X/X-W)<9>W/9;0395<A=O3KT3G)5\
M+P)./X !SHL]7>/J1&(K? 4_Q&EP(&%>>!3&?+"H%ZG=$V:LK#ACB9</QDRP
M(,.$Q3:6P4=O.>5LM=F,EF!D0B:C&C"R/V6;S<+94"1*2JX.R?KKF4R_Y=FP
MLN&QIF*W7LVI[B;6^2*X+,L\?JYX''J9!?=A[O7-&<] &_O,.\K75%-6<<S.
M8-)=N;Y0:/X/%N'N$YY6UJMT5*MO)=N,?N#K(I_.E]X$&3/+VS_GBK@PC6:3
M"-CMS?8>,VR):/?B@40D?H4;ZR$[A DKT)/R$J;-3]-XK_G&9X:T(!3#!WD]
M2)#+"3!A-V,6G^9G;Z[L>=<D42\!;AR5PP8-\: >F#F]N?5+&=NWNWO>-=&L
MKN,6!JFTW=U4 :!#*MS=^0][],6NV/W?.YM'%RWTRJL"M:V];U])>?,>)16@
MH,KXZM-1P]O/.OA:?ZCI!W( C[JN#_[TM)>:R5 PZ=7[X(4?+3YE\$>;(4!E
M>EYU4PP/<\SS S#F&860CM5X^\=\(I@T=WK-AL _4=V Q<ZW=0):Q0[\;_.3
MYFZITR)F3WPO^0/9\^CR@L'UR/+41Q5K,+)0$Q8019)R\$C2&"K-0WGJ9?/5
MCEF5%-L<^2VC,2$G>C2J\GTBA9OUN7"C/P)H_,B@7C.,@OE?Q^-'F&O1> ?@
M83DH#$_S]'1V1H/C!OLNGE.#%-7E5,/D/IL$HZ7!/Z+[K28>2.JSI*\S'%/P
M?9-"*IITKSW&+VF\B2-PA-? !_=9$D=4MQZ;I\J&Y%#)S: "V[0>-E!P)>3
M,^6MSKDDZG5:K\M>&=FSW1KJ$I/U)P8\S'.].'2".;EL3 )>$?"QFEHBQGR[
M)GWM(@@W='D4!/&S7@O=+RH0M^C'YNDX:BD F55?_\CS>,#\RPN4>-22YU@(
M1<1V[HSGX3O#NVANK'J[VMCJWH[9'#)]]P=F!_KYH\>O[9LKM88O2;,=X)!1
MN7U#_[<67!*9R;RG'Y1M[^ G$6U.?WV3_I!0^$-$A1Z9; GQA14[+&FM"VN4
MQ#!GNX2)Q2\TJ""T/ZYO-AL"^9XB;>$I?'^@H@S':JWH%%9[@90ZRC@JHI++
M\#WXX9FD9!.7/W(LDL+KR^B/.UW?J,=A+%*2'E\X?SPE;6;$9Z-#!#!&H ,V
M74"F8N0U\L'C[E1NM*,9GB./C[,['::,PMKL^#%3LF.X5BAAG]8C \HG[ NJ
M1/R3K#^OZ7Z@VD18F[1EQ '5-)0(<?I;M2,<&W349C7!@5X$S80"=482,:@.
MT@"I5)E5(*9U47L&/&]L_+5,9EC&[WG]M+!**JHQ%QF'3,^]U1RP8,=/@T%J
M@8;W%8<R*2_2"FA#_?>-%CLE+RWH=R-#GO@ _]TJ!;LS-T,7XRM5 ,F ?@&P
M. L3=.%Q5TW!@=A,;.:KE'DR@H;:@B>N[ARY[LV2@V[%O@+5*I-JS?5-'G;F
M'\7@9&PG@>"D:(-3PJ2W X)EO5"E8"Y*!?&EKI0:AVQ9JT\D$DOU,UNJCW^X
MI5*-Q!,56->,(<NM=X"SWIWP,VE\ONB:VXA<JKW?I;)8T;AMJX6NY,N$!G*\
MCJYTGORJWU<MZ.RUK#![E.VE%2\C*N54K%02RTW\EN8D3$#[^&5D*9DOIMH.
M(@,R:(8)8)QSYULZO^5PS) . ^K%))LQS<MPYJO0DICUU2C"UD8(E=5X8:M1
M-:OQ0H?WF$+6BN<":;4.6Q0%.\>X5;OQ:3#"1=!$:*J#G!^;;<T.(B&J,*%R
M^%R1;1 (RHM#DVB;QO^HQL2LU,2"R_T^S\*(1^#4I+U'LGR*B_#E)8<0.U:<
MX8&\DK0:':ZODX7W5!">*7!]:K9T'PTV=[41_+(JMQE4_!VQ!15K?DW.^[:;
MA@.S 7\&-H3%:K>+RYTH:E2;F2#TY^1]UC$HUD/PR#QUD#GR77SP6!L:OT/>
M].<)C\$:S$$636W<96-+[2A%8A6BL\0ELBKP@)8B;&TC.6'D.$R*('A67.AO
M4L-,@^ F;9*^*H.+5X_R\EN6T'L+]@,$08+#>S1N-7]06>P;(\X*HP-U%A3A
M#Z5Z.I;$-E-9X40#296%!IP!)WJ O_O+S,2.:B";"BJ]PQB/-I29!7/MN0E8
MLV\]S4@Z PCZY*S9]J*1/X\O:Y6G+,R4\G8;O\.?BC'P:34]QHRDZ!T];3(V
MM(+IDNA%L!$T^<NTV<018= EGK'5:KGGZE#_\=>8OHMYM#W<T5V3C-"8% FH
MILGX^WKYFW?-J6;G"PE!\H)UO,WID@(\\ZBJX@K!H*8X0^Z//*M/F8@QL6(N
MG@HF*2^[,I-Q-T$+??%"1\L[1V;5R*[C.?8>KN6!<6-^Z#V=PS8$69XES4B>
M]S7&Y@RWSQ-M!#8G**84E2QE8M3)!'K<RJ10]'@RV=/-W41/F5S0R_6:9:"%
M"1AS;\.(7.Y Z!LI=?%A8*/NQ4!!6(_$@RTV=*P@9(/Y$L%\,9NH+C<&\":9
M;$;@T3$P1L '.3,>6U4]&KY8*G80LSP>CZ9>LB%Y3M9@3!3P0DJ (J $\H*S
MIUJR!7EF60QK "&M%$LSR/FQJ64925XA]6 >&&EO]>I^(\4Y50GDTSWO$H$G
M+KGQ&>>T/*:#[/9)=B#D@3 WL'*4KD==%Y+N3SDGK%\4U[YOB<G9TC)4!7&6
M82<WSCGQHB;J#/E.L^4P,)%8P ><KI?6B0@*.>_ZZ$0L:#GO&'S(MT^8E,;=
M O5#*JC-</*GF;]1&L@YR<7/7<LLMGP C'R[D6XJ2[K=#)XJ!]+MU>%+^/<L
MOTY">O1'F-*<2+\@6K%A C:.?]N:/WXU\^@BF"[R\K^^9GFYO=Q1>2T*1U8I
MHH0"0<FC4V&:2>MX_LK,_2'@W[R3J(+$X$E<55"$H*;HVX<S?O;U)CFK6:N[
MA"E 1? +59) 6"RS0&>&N10"*52Z%>;+/-*X"/-(3HO^L6=FHL6?()F<[,N?
M^-**[IL\VPGV?\N@2".59P_@[V68:*;TNGH]L^/ZL;7\T^RLU=43!;[GG8S3
M4?FP-D*:-!0J_R3.+RO5&?-<VSV]>=1YN]HAKS<S"#SWVPR>C\Y:>2!@PZ;_
MK@3S/I%\]]'T11&F@;SP7[*4''@ZPVV5KH7+W+0VYI;(TY=1X*NTA<DHJ].:
M..GMA,04NQ]A'DT2PZ\D63]E7T+PR)0''M?.=F=1=F[6P3V1OYGF9(+Y7*94
M,2M(_DJ<U^V0?LBL65V.S))I8LK= XD=$()KF,BFUF_(8AI4+IP-D;]%'<>@
M&-Y$!,)Z!4@45%^G&XGA'WY+LV?82)#1\SG=5Z4.IE,#P)B^H(]QEO :GV+!
M9__W&T<2Y$;ZGZW/[$3TD9?*[B<S,=[C5<-\1Z.<[EGZ"O+_?D[O<[(/X[6T
M<XE88ND9Y)8$\^-Z"J4E/$E-\NLW2%=]>/QF%X:<'; O/KN124V,$]_A;R3,
MG]XRX\UV"B%LYN5MS*[7@JG-/]N_HZ,YIA#87FZC7.1NB3G]IKJQLH7H@?^<
MKLG&OJE816+C6SL=U:5L3R6S99AT8>J ^8VOJZ+,=B07* (IZ1XR5SOD[R -
M:8]4&(LC8A9(OH)V"%$"W#C'_#KJ[Z"#?,W*OY&RP34S?4-O@R$OHB4'UGZ,
MC^J(K<JUPTFETY@4S$S ZB,()#FC8G=$?V16KZ$)6*68.3 N?K\Z0$!H6]D;
MT!SS0GKXQ)(L=SL CP&H!38_0SY(YXH:W!.3/25XGLDJ-V&>9E6I)EU9V!O<
M$UOKK-]W0\A'<750_L9N"J-F>22-Q;#<1<:4H)=.7,S^NW;B(1 M4D]Q"6Q0
M<2]^C==5F/PU+K<L=@N^[3;>/V4WE*U2)*FT[51'=L?>&=5SP3)DRIM7]HPX
MO[&M,;Z T(90ED$E%K' UGPA[D!Y4-0J%2[/H*D]KEXI8H>(4Z7L-D+5)L'"
MPAUL3-L#X8,J>F QM[QXO3VP#W>CR4KU3ES$V@5LLR(?<^E/, "VA56B#=R!
M.5'._M!C:.WKA/B.W53@\^ENW?9OR[#@&,TI#MN,L3WV>?.6D5!K[0]9DMQF
M.72:U.-QT@R0EUNY80SF*]/RN'LLQE8$H1RTN=V<;&F*O?WKPRGED@'ZD]84
MW3W#4BCNP[P\L, E*A'"WG<)DWU]D%GBE^.U_073&B!/5GA<NWJ5L<%R;A\H
MH*B4NN=W:<_]8^R#&-C'==++]3HG1<%B+5;Y/52C2B/M!/>UQ?XJ6?H"\6X0
MI.0478T-L?58X;IN0 5E07BC&FMMC6_G95<?&#ZD6X;-3=$*#JX[]2@"V(_>
M=#CHW'4UJ5AG&^3,%XV%KQ<R0;<5 LM^A.K)M8CG8TF/G +R@ANLU'6%MT\L
M/E[YQ1A+=1P%]!MHM\_)EG[5NDZ>*U#7T1SQ1:;2)!S8Q\/N.4O:3[#V(ZZI
M#TS!67[X:Q[#+MA8;&66=O@;99>E3!#CY0EXL5[+)C$UQ5Q[47IQM;EYASH6
M=+NN4KIQV1P?B(2AZ5I>!_8[UT?B2'P'%@+AYZT8-1/TH]$5PAY(1&(657P)
M-:HODR1[ _/#;99?4TDT+J'2U%");A Q[.@,'E-JC"5U*-4#NF'>&\X"+:R\
M,GT'^>N^VGP3=C^Z13=9OH,OU,2B=JZ6Z4AC?_EV7,UCMBGIF39>$-;&V&<8
M@G_2-?P'KJ+7,#&'IPQIOQ )=HHJG^((\I;--62\N>88%_,N$ ]1@Z:FR#D6
M4:Z_"[H=Y;EL'EVK$=K0;*D9>8;*0IW/<F3_)4AWJF'"*GBIC;#OTV:C7X?[
MF$IK=5$S2 ]<4]'EM@*88- -PI;E]&0BV"Z$IL@4$V,,VK+]11G<>7G/BR%,
M:. #82OICG2QJ$DTJPV[]<3.,N;WNIMCV_?I/6 TY]-_7XKWY)K^<94_96_:
M'>UHMDRWYYT[2=K=9PEYA@QG)A'7+;MB+\LRCY\K5E'Q*6N**_-MWCR>)HY'
MDL169VSYW\Z[K;_7<@0F*>J B2%.5RE+%!1WV2 D@WX"V"*3'GYK?W2-#9<U
M>5?BAZ4I-@,C'494K-L05DQ"U$R*>6:+S8>DE4'VX<$:-2%LF;0&Y[X/X_7G
M5 C2#CG4U6%YLN?))H;:S>+;EE$/A*[KY_%K"%;%V_B=9>4RS!W(-C+K_-;F
MR]L%&E(9D[)XQ(?R-3[S0&.C3#R.(OH)_WM5L**#])Y251+SZ;8TQM96.E#/
MKK 7>VMLLX>20WI+?U$\_58KLKDYNJ:C0#L)>\LC*<N$K$'JRZH2YFZ$;!O8
M%?O4J"XFUUXS-L2>O.(!_)15S^6F2BXCECRJ6,M=L:S'$$!7R$3X'C,$4CUZ
ME;-(RC7S_5(!C,EN%N?B@)[8TK)$ZUIMNF&NKHTYJ.,R4X4<.]/= _U69+ (
M<%6;_/14(!#E[@%4H&"56\PWY-%DEH*2,C!IC3;XFJ6YEL-6%[ZO2]T/R)N;
M96!TP5SUKDGCRB>K7&YKC2W"*7'B1J%-^1U]Q:5N(\\?F$[LV12N]NBOH\7P
M:(F%=[5?2$YW7:V,"R1PJFNMQ0G[[.R(K1D LK]XJ>T;K=L*_<53(5ZIN/1B
MMOF;VF$+R:]AG, ]3V7<QS AC?T:;B!Q<=*_#3.#3T<56]X<:0SE@9BBF#W@
M+3YE\$]*Z,&E0)(BG^E=&:=%''G++3AY,N@>T&L&V)0 5-[[_R.:$=+:"%N8
MA["$=C:YW9#L:([]9M*W[VNX<SSX>@OL.S@N?@?)]QMMF9=T/LRX[,JT=77
MOI79-AB8A6YMO 2GN0:IRS9[K;L> \9KZGD^!G89M\^= R+3 R!>(!#&$DTX
M(7GLBT0S, T*U.OILA0]7X&H TFF Y->Z#CI.EI-;;7A9E^KW.YO-&P9JPO:
M, P<J-,<-6I$)"'P32I2$0"%,8X L9"N?R%MJ*;7Z%0:V&:,CF]IF <*7:)\
M"M^E9SKB +:=+.G>QOCO:K8CD,TD;:-Q6M$](IY' (PDFRPG"B#:S3O=-%E.
M[\XP/[" .H"4 BM-EM 17N3;87F,?0V'G.PHDX28WF2"QK<D+ SOBKY31% %
M((\7]/J$FY/C^ J7HT7\ZNV&SEA'0)2RH8C$<4G^PWMCF\/X;+A-9$>?>/H(
MB$PPEH%A]I:[^V _^B-M&4W@E8(L[W0 ^AP06TV$>8)3PZZCMYI@WKBW"7E_
MCK/B #%!EJO5T 9;>Q%&#EMTJ?H[]G88:'5]I!==0OI<:*=36XS?JO$ @K''
M]@5=[3$KF9&7=GDR,T*TM2'V=K3:=U#M-QP[7Q?9(*6>7??'Y*V>0 -=;(($
M>8ZH+U!I;/)?JQFV45V+=WF ./+5YEO!S>7] 3*M#JB/8!@Q,\S->UQ*( ?X
M,_B\;/K&@#[H>O4#>8E!)DI+> S-ZK3>!OV5X!9&JN/(7,0^9+Q64TPL9EE@
M>[79Q!')+:C,QE;8?AHET\\NMG9;+2<S3$^%ORG*> =S-4+^G- =_?N +XRL
MI>%1R;BFYR".8@ML;5\OY/H!3-%?=Q7^O@?EE/ZXK#JKRGTU<M?7!;5@VS8F
MFZ;*D?7"ZVV\L'/E*M)I:HE]_S6ZT753?9SNE8Q['WF--_&3GC]T(@EL0Y4,
M'%>CS:PIIK;&"Q#XF27W(7RC+PY5=,/D"/NOM1?VM_%?EL #>.ZQ@Z-B?.S#
MB$W/<M&V?D<4A;_0EVM7[<P2L/8CZBL6%ML6#!K5Y+Z$^>^$03W8Q,.>VK+3
MD%W )27"C]GUR2J\71UD$'D5)JIQL3\;8@P];&-SGD6$K)FG5:D&5<A<>7/)
MSKY.V+=U_)(R#SJ]!^N8\_LLH5I!3Q7A83VQ0R%  X"TLL^[?9Z]\M :JWO.
MWAK[*YF?-7BX(-0LVA)CL>03NB]8/5+45EN.^ @RJ.$.F_B?UM=<_1';:1!%
M>:44H7#&%UD;8Y=>8I(>'(0LI;.QF[F,#;&_0),-])3)D$+P 32!0$\9"!VL
M1,L:GM9O!7R$)CP74/SCOOAK'^.@GK \>Q8QEE0!K**(% :H=$.CI42S7AV4
M"-/;G$$F10>;RCN@VT(RY6ZSG%!!@E\-$8>7X^5S ;?4!C$^O/<R'^Y3BKFX
M$)H>LB39>*@4>/(LT/U'SV43$>2L#VQLN9Q;7OA:GC+Z@D)@.4BG]#- V(?Q
MH_9<YL>20W=="IGA@>Q!5$M?P)A7:7="7UOL,,%V*9'+JMQF.80 FKZ5HSFZ
MC;P@M#E@QG\BKR3)6,ZU*'M@-I4[.BSG7;T*$U:,8$M(276]:D]WCA5&?$@_
M[ UGQ/6_<P&\]G3!UN$5U 5GZ19C0^RKG.N<O>A,"WEY5'.51()>;91+J<_&
M9>R$+83!''CBW2>6W<\A+]GV4$%\.U5.3B* O>$T1.^V\<.X 9T]L+_=J:*K
M7HU&C9=E!?LF%9-[QL)^$)J#:+TZVVVP0PK!>P5I2?1%XA8'AYQA;8PO,'50
M!"UR4J<=]B7";7?#$@FMC9>7 WYZ-1\N(2G2D6DE_(Z(J(N)#WI+%>4P 3B8
MFW3=3DUPM5OD(S+\"<"^#:5-M3&^&N_!;K.%G$"UCJP)#F&52S0$_26U%^B<
MAC*ZE:I5U%N\6U<D)1MS*&=/%_1@@<&,+),!?^%#\Z5&CIL*OLQDMQFYHC)[
MNV'O++,**32&YA8[1O_L=L:V'O!M"$5=&1+!"X\F;7!Q:J 3GJVAN0F-EH4Q
M!)>Q&%!Z0Y/P'7QVVF*?QNP0)N7!<>[4!NAJ;AHQL#DF=L?%[Z+R=?A"C$7N
M7>W1WU%G!,O5X4OX=WHD('[.Y@$^DL1"SLH4WJY3:6$+@Q)FJ(X*=;HMK:W1
MV2A"@5?)S(D"*-Q>E]71'OO)AFWRW"^!/;<E,/9_ .()]AQPEQ?-U6(5]:8>
M"'GQE+ 3AG_F1J>VM\8,&AJ-3F(&;K4BC7D>#WE':,%C>B7%^Q"L1NQ.,ZO[
M0_NBO]M6["*]%H1%(Q[6>6ERUIW3M6QMC1T!,#@/<U@/['=7&(;$^^FR'8DF
MR!/NEK2P/P^VMMCJD;L(BC-[8FC?)<A (YXDYO^LBTQ.:N<RCG#FRZ4$6OI'
MGK<.MA"O@>)% VUVE]9(G_S2?0 ^5QO*!D@&K$8.^95*P0,]<T?1Q-Y7-;SN
MS6Z?9 ="%;_\-8Z(90\D].JH%2KI@.0GA &D6-4Q+P.A/XUJ=OMM&)'+':2K
MF=](<UML#Z (<<AT%]^ H ASC^6=\#[[+L1WV$,01A'$MGW9RAFY[#^]G=#/
MW#XG$<<ZI]/KJ^GJ:(Y]\^KUR=TN.TO;)5P><&OG9$L//X-2E+HT XYX"M_O
M8<'IVAM4:Q?'$Y%&-?(T+UX+S9U!O(-'D=L6.F_F"=TQ&9TR.,EBF:!WJB%.
M;/[1T2TDNUW,\VT@JEX^1) 7/RPIZ2@"2[A=A!7$^48;&V(>B*<\I!I F-L@
M1%N_+V*=CXG+=/? ?E<[]7Z_9J52'LD-/3&T,S*3WQZ?<N;9.%S%2=+XZNP.
M=7>/Y9I,58E-Z!@0_GF;548V3Z-T5NQ_I7OPZ8TDK^0+O;^WYC3M412Q3["?
MPH<BHQA$ 5>NL0^#V+@986?)@2Q$Y_X [M_$81DP-D17%U6SBXSA?0 $*)*;
M'4L]7; /A[6<_;#W;"'"W12UR^]<[L%)!\#V_N[VE!O8C=TLNIOW**G TBZ1
M*XP>X&,(H)]8%F9+[TAPR65)]G+@$2AVV::G"SK40-?_V/X-^U(Y-4Y(>]^D
MJZP^>L;H2%]CH:OF1<EK%,)=(WP;Q2.]>LUZN*TU-H;5@.*%?6VQ;TMW@&H3
MGNHN<WP"&?S<RA98HA,=P-H:6S0X7H6+S?FOIU%"M1R]94_;K"K"%+0%JI.E
MY0$45)LAR=D<^U%QY9:,04>P4,!F]U0=T2G&CJ>Z/(_LZ9G+W,"H_L OL8)R
M?D1%;7\3^/X6F[>\SPG5(-;BII35B.S('R@3P;RXOPD,=R&D6NYK8RMT?<MF
M[N 5J>F+Z$XR.(H YC?Z$J;5)A0)<' _TET4IH7C>_7VP([P4+/[S+Z:5A/,
M]=<3Y9D76XD4["R^N_G"]"0VO2%*$FN(K:N*6.!."+W=Q-+3!9LANUO[2"_X
M0J"$I3N /G<%G2:S<-A0O(?T6IY<XM1-7>V7QXJ2)R]20UF$ZD#&++TQ-^)_
MD#R[S^*T?-KF$*?[2M+;YA6_;JHX/9(TSG)PD1>?*L+USUZE=5+JZ+8F"$JK
MZT#UE)\W-47/-&DJ+C*0:SHE.&U7!_476R[X\-[HW\EIS!OF1#F2!OJ;V$W^
M83-5E"Q'H:$19)9W0UM"MA4S2G&]A3]^3GE4/H",NJ.\C;Z-F89>1E2K=OA[
M0E@[;1>81&Z[Y&QMT6]N!<X%1 86><$P'NW7M;/+N1I0W4$VBL[HH;K?D6,C
M5LQC"6CF>GG*3ZA72X^YWW0I@GJ=5:7X)-T;:#1)?&R#@<5P3-MZ>.\EG/U3
M@@+Z,>G,T!7\P$X:GS!N*HA!*I^RB$V8GPT+ *NQ$?9UUG[HM!_0Y>\!J18]
MHO<Q%)8A%':S NY,[LWAO19FYW5 R5B:(IX1>N^OJ;BGAAAUXUV<#='/$(1)
M/8:)*[.ATPA]TBT3^14]LUM(][$'&_7U05>I8P9Q!QMD4+U39X=%.3S=06"V
MMM@A4C+J4=%-B_H??XVI>)='6T/<Z4D$EB ;CM#-E"P+?PI@9Q!T@V<'\TL6
ML^C$L%BLU8/[+_$PU'']]G=C2#_LB,X:4/L^C*GB=AWNXS),>JHF]?=:6+:X
MIGZWT'-N"DKVK2,[GD0%^VLV]:%=\ ;VTJ--N44)@6#\_-,/<^8O@&*&>\A8
M;=<9ZIDJ(Z$&W=#-+P"7/L4YB<HL9U< G[#%13ND$R93#LW8[(GHZX"]P15'
MB6*B9^;Y)B1@ +96;W?LMWI\7L:1)+"_K,L K9PI*4!:;))'4\%^ZI1*=:"9
M-W@#H%%]"4OQ-_ JQ^DJY<D7KA*<XRABIU K0<WI^K@4WJ%],>]C^\<1>3;\
M"F))M9V[^9C.J$Q&$4E O*2'4$$5LSRASM;+O)1XNO1I%6,Z?=&3;JD61"_'
MXIYNG3#YCWA_G:T[3@U[2_3ILSCZD$7/?PK+T(#&T]<6\ZSH=C,EIH].->/W
M5N?$#.B#'342IUFNE();O:7T&M[&^R:_X8K!/T+,%!7_Z>G@38QA):<26\[E
M8<[O5GY?E*57V5$0>5K *PHV _K<P,D!4"ZZQI_"0V'DZV1BB[,$#DB:Z^VT
M7#W"DMG+@HV/U"=<I) 7H';[ND3'3B-L9VJOL+L(D;:K5KOVB$Q=+""X<;4Q
M&";=B'-3#X*]:-ZJ2WI$_#]R;$S)RKA+!H5;#.ZY]!U4#//%D?I[30[W-ND,
M%J!J1%F^S[CCA"6H7,-3GQ_L*I.S"_8K8X1+/@+'1NN :KO_Y0Z0NZ+RTF:G
M;S7 M0'16V0-#B:;1:35 /N:D9E8_/*'DYZES$%@B9YW=EBLD/] (A*_'B_G
M-_V6E.?0N#2:T&77T1[<&?/DU!7+;=ZK=@/TS09%"++\, QSW-%\(? )3YD0
ML*5<3>R1;7U]4,-PJ]TNS ^KS6/\PF,?J%C2@?FR2XA']L>^P+U)^SK$8$MV
M8ZH !+\[W56+F1RB='F716%ROZ6/9#?NSO0[]FU@JWQC/###>V$?D^JYB-<Q
M/=?@7*-G&^RS5AG'UAB;B>G",^?&_CX/D&]7XOM"$MIK^7NU@:2VVR1[<Q=-
M<K1'EZ"$0'=9E5OF!7+AD)K;8D=X#(LRG"!0<2%!B+48ZWP.NJT6EXURJ'-+
M;*] 7Q_TASI.HW@?)LP?:@_P-K5#_QIU#/9]F*]R=D?QX EI?3)_D-YNV$8W
M!O6WVMR\1PS- N#_5BG<N_ _$(I>J4#![ KT!HXA11Y^X  $RC\H+>D-P %5
MJ-ZXSXHPH?I5M6=USXJ(17!6=<4N2[ *_JSPT\>5\O8RT.HI4S:4"";KM9*>
M2 K7L+))!/8HI#<RL"UX2QK49 DJE5ELED=36%3$@XK%R:^,4Y$\V[VQ;YLA
M)82_9@)ME4GCQ5/&<V#JWR&H\&M6_HV4[0+##"N3_1.T,T:#S#L#;,E[DI(-
M+G24EF;T0$#"92 U''VJ"A,HON.QH,04L\/^3'4HP>D.S $Y!B.)HTM@=> 6
M0Q84\4R.:H?N'HCI_5_"]WA7[<R8/MJ/BWJ53*%S2KS<:;%W"@'T7/GIH,^;
M. WO*.O*4 O+#IVZFB]B(>%E5$BM?0,,SJZX@^I9?QZ0)]UMCFV#JA-5P1UG
MSGHV2P</A&<J2/F-2UV*R&7/0_(\YE+VQHBR>5898C+BB(]N':9O1M)I_8PM
M[(RQ=/#]V8T0$?8/U:;"[2Q&X6G6&2S%1/S7+/_]<WJ?9Q$1]FL!L^FV&=N[
M85M<N<@+)Y9!=86)T_/B:([]8@PH)[^02O+M@)/;+&<[@ZR+6]J >4P^,_M"
M+PSDD2303Y$>_,[":@8B= _IB2K>QMDF(>\6:Z/V*S)H1$2O8FD!Y';?SG2-
MK98*0]B'4&WIL1B33OU("!VB'[E]:%]L%LD+7$X/9 _)5LRO,@0<<T WQ-"G
M:\ABHM***8)>_0W]JA4;@PH;3LF$_H[OR1H(9=SCQ#J2"K; (JP,]N0P*B+&
M:RIBV376XTB@)C>%$;.3R+I^-^]QR;!K+ ]F3_N%6 (56(0[5^R(JSVBQ@M8
M.JL-Q]81!4#,NJ^U(?H9JN.,5"@.^N>$,-<%55.43%]K1&=/#-,HVNB/, ,8
M^(6D]"),8-+K';TN"A8#]$I$\K,#A/<H LC,MMQY>IU!Q>UGK>EW% 'L+SL,
M&VR8(#F(Q#(%!?KZA6DT5E!P4%G,=S;[9QLC&PO5816SF5-6<#*@%-3$0V *
M&NV:/@]0A:XBOV5)M2,LDJM*6>"+K3#L<?V7Q*I2+Y)^R"H"6^- +NU=4;5^
MSZDV1T2&N'.#EC];[#M,1NS;HU"T%MC3[;D/56#&Z6[9?JKXXG8K@]@N-MK:
MHF*70=T.D%EY\' JQ+H-#SLIF!1/=G&UZYSMP3T74.SGECY282*C#:-*TTB=
M#9>#I>GVXQ@;8CMS%/<+9-C1VUI E](7]5>2T#M;_KV!P32Z=$XAA)[);ZX6
M.]#B>T1W[(=!OE).<T^WU4+L54<&0$F_FC$0RF)8]C04=KA%$Y@($8N#BNO:
M.V _X_0;K,6#UEPAW)M*UG#O@%12E>SCK39M$!U>S-;XYD]!^/N,47P ^7RU
M^5;PKET'\5PC8U^@U7-!_E$!ULYK[S5J:?N'4DF[  N8\\"6,[)#F)0'87,V
MBA):"^R+MJ,#@?'1$9_D:(^:C:#X?3H@6N86V!#5S?.CB\Q0(X3')K8B$F^*
M,MZ!%&HW\$Q$%UV4J;,Z79476XV6$?PCI:I09.S( "7#A7!<ST6ET3@?14M3
MU._C*!QP/65Q[^$4T<]8RMUIK%X9U>A?H R!%7G,T1R;$>.==EE>AWE^H%_!
M&IHRJ".V+%K?#H-R?B\3JKL)U:6=U7N,JW7BP; 7<62.K@*BI!=/]Y(1;!\-
M':M7>7([X09M"VY_C_,T.!G5V:.B=F89&/.Q?<HK\FW/KH!/5$T V>SCAX\?
M+'Y>9VM\B_F&?BF69'=+K,9PK0TNYH@(F542!:W@(K:FF)'+&96 39$QG1^Q
MGY1!$6>GQZIAN[FR] 5 )>ZK/-K2=ZJI8'E-]<27#&!:0::7OZ_M"'(GDD)>
M@-]$6I(%HTSY>3'>5%9RL-^76C?#/D$-Q"</W56\:O;=U-\+FZV9JH L#!?X
MR,EA/^MT+L:7T=@ >T>U<HV<J*.6MM@V<1(667J;Y=<L9?IS"IMAM;E,TRI,
MI%L5:DG$.0NOHK>KV0=_-!G$VUF880\R41SNJ_;5;&J#C<%P5$6R?B_S&'KH
MP=QO"@!]GJ7TCQ$'F6)P] ?^_T[VCZ6!?3/F9$/R7 11<Y6=&SG-JH^M]0+9
M$ C&_QS.2M,#V\0IW%8L" F>VVV\=[Q>CN;8;]F0>G,#4.#Z>J.Z&L E3<4D
M>RVB3@OTTV(Q(MGKD#A[8$L;>C3)ZKFD:@%L%/G*4@G" I%EE#I.)[<0"Z>2
MTBF,B<2N8?5VPJSI05["A!N6VYJYX><S2?1SR?/'TD#W$-S09^<%S%MY]E9N
M0<L,TT/[.SF:XM^$=6!S*SS2<@W:FF,_M-/4#6EJ2#+X8-T?-:F%X8AQEU_D
MR@+W,KPOXCF^I)]DS<R%2=AQZFD_8F_Q/O2<@;[NOM[X2NAIUI)!'1?S#9TO
MW3&?\PA"V(]-NYA?6Y4Q6R9[.B$S]42ITRVWSMA];M=13>T6Z_2Z.EA\53;_
MT(FDL!6GOGJE@W.ECJ=S5E;/RTU)<N9(HQW&&STU<JC9^O1]B/=93JB$L@MM
M>?F&1M]+0HP(9%=_Z$@'G069>P*+>;.U<R[ 8J\._&:'>)Y3<%U<9-"UV]LX
ML503;?^^D(**=(^U[Y]A99./(H!M'1^#\FRTGX\AB'D5MF1?%0JF<VLYVF)G
M&M0;#,Z_BO#3X#UU(FB=>$KC*"[$BCO%\V)YQCP/M9 4M_YB.^:6V,=!RZ:Q
M:1S=5MAB@K=8H[JPV<)BH(;/"_O!A/M.9,\"+J+Q#6RUP=Y-0EKD>#9-?5@J
M/;(*L?#_M_2NSO)!0N<19+ OKP$57]A&--YG0SMC6\*TX OKT34T0U<)'G=A
MDLAWTZP5:$WP)[PE2>)TS*DML(W?PGI;^]=%@*/QRK(V1LQ+?XI+CH&_CE\9
MRK4I-=W8: '@[/SJ $7<)G5T6V&J/]+J:DF_[:A />T7(O<K@1CP*(/#BHO=
M_+0J ?#LS1X8TS&$%/:;SUPV\%C=TO<X?/]K7&ZAVB+]5/0?S'*<5>([D@XR
MZVW8(:=08VV,[DY@L+1.S;S=9@E;;D3X MU/&Q*754Z$[!R+2NPRG,%'S$3O
MH-@NP3Q<DUV8_P[38W^!,'='_*JS ^8#<U_19K$5EUG_&7.BBOE6U-DZQ@A\
M(@ETT99J. !*(?YS1Y\\+4'?V1#[X@FI4BHNPZ^D=)0Z,#7$MB>(=)QK49$<
M'E@9@\XVBV(@/+A>@Y,(83_5DT!EW+GP="8>8B%R[;1UHWGCVB3G*M0WZP0P
M7P'AJOJ2I>3PA3ZGI+RMTK4-$,#9&GG/=&L!T'/P6P;I+7 5V*_+01VQ[_YJ
MOT_8%,/D*DS"%(XX(67SPO; ]AS1'U5Z(CE87,,7B2Y?/%;/?R=1^90U(FQ7
MJ!K2:[G10]84FKX^J'% ]/TEUV&>9(\QJR]E#.7K:8JN?1:$-H<K[1,4C<]8
M?I*B5=DOC8%=T:\-#7H6#' .W 1;8W0S(Y1M;<#(A0ACMS=:FR,S8D.]=WB;
M>[I@7@"7$*>Y)G>)+86QW6 I[XI8NUL"1MSD*7P7_LLKDI)-W-5RC^B[V.AD
M.]AY7Y\%;#%ZQ]XFY/TYSHJ#33*U-T7W6V;K*G*\)%J#L\,;%J'*(D"J\UDF
MH(G]A((\R50"JUV6_;H\C=GBLJJ-(XYGYW1JBPJ$DBBM]MO/U1[1)2SNA%4N
MS#DFC["I#;H5GZG2AR;V0AI&X"1_(>76[-T8TF\!*#T_?WQF;OBVP;C]^W(U
M3:48L)IC<J3N::&"?5$[P+:/< 0?30570 KC!,R0X*2FCZ=2K::_#L QG1'O
MPNMM3#:BK&V8K#8;>M?E77&JIRFJJ824),U>P\MG:QE3O<'R9(G3B_B L;NI
M;F=/6O4^*+H50PV#$@F>XN:T*P?]O983>TJO$0>2F<U<<Q0!9&;EOLID]""W
M-<D438?7<EC/90G/#5C)TS8G!81#:89V>"F9ZO.4QR\OYOT[DB1Z.1"8(<D+
M'M</!5>4M&0S@,>07NABNHR=&1)?LXAKQE+MGE^/QFKW)J:.IX)]NRKB]4I*
M-NF+-8C3U1ZWW!R=US%AMWT=EHC;Q8HKDW47>*M^X4R?[$12V.$\:F8,9,18
M 1G-+;%UQ9:KRXHF:6B'+D=&8"TAGPC_+[^^H$J#)6'3V0%_&W6"N)Q B\X.
MV,R8C=D6N=?>&GV#:27E;+AVAF;8AWJZHDJM2_F!@!N</:1\^U5A H^3[]I.
M0Z>!O?$'EGP:TAY72AGWY03([; $8!UTS"  H<UE"<?82_*UD@2QL+3P8V:&
M_7EJ3![A@/J<;K)\QY9B "JWI1-^(%@#+V35KKJML-5#JP4?GF/A9Z=_>Z3S
M38CTN\-NTESL=+]:;',3TL?>MDH +,A<MTGV=I.07EB8(?TPWRQ1+_:Z74-6
MKV#0TQ23@?I>8W +CI*XA4#B$:B6/$6UP^0X<NB"5%M7=@9L.IJCZQ#&&$P[
M*\X.V%='W[-?]"1?.@M?231K=XC1/,,OS^\(M0]94I=2:<!Q6Q]'80%Y-VWU
M_]A,G*']%U"!$"ZG=N2,^ANV+%6['1]!%:7'I_BV7]/[" K-?OB+W5,RJ"-B
M_,3J+24YE/<Q!9%I/V*>!_#UIU&<Q,)W 3)C!,D5JB7<FHA\5&_TMU$4U141
MDU:ER=CP;/QPX_QO"[BO_KT*\Y+DR8%72K1=7:UFYP#JZLP4/(X"JKFN-BJT
MT4U:Q__.E#A](HFERZ)C35!P'CW D!P__#(ONMJE?M)%9^B-#H@!>-2YK#?0
MON0,37"%! FHS)P']'C2O<(,B9#/#/_T+8VMU>R/ZHTN)+2=MFZ0^6/Z+2&(
M#JZ/G&SI#1*_$J[\WV4%W )4/4VYP!.I8&,<Y2<M>/9P$P=!3]IJ\Q2^FQ;#
MSTC8+SS)7O)POXVCCOG'KJ/T=EI"1-H0Q"=\D*?ZBK<%<QK? UMC?"8B>,A+
M<OF2$VY-LG\!>VOLO%?WI;B<NT_S@YFKHP[SH3GZ8L.PA-&6"LOY85"16'OK
MQ29145%N4R5W\>;(JCY-/TP1"LXPE4QC:5MXRV.H_[;I2$NVAM@GJ!-?;3PK
MG5;HUD6>KN+(JFL9YMW;; P]S.W'2G6REUS647@@$8E?X>)ZR YAPH*O!9Q@
M\Y--I!]';LG9!0Z;Q=">Z"J,OA^I_'SS'B451'FYH->&],,6FTC9:!(6_;]I
M@/\=U$!-RY*K3="#<?:BN@[SX?<56'8T1V>D51"JY:TS_ZL3<^ID>MCO'Q@!
M66"0+0U0;8 N8X@PA%633'R?]7N?A_3#=K%#*!9H$*2 D"9A[W 7FW9Y"\;0
M0__*QDQ_@1\X%C# 16:)R4NKC2WGR,3TD22PX7<W&P(&=V'^>PK?H8(=#P^K
MZ/1$,9 L-2/K#NZ-_M"+^0WT]+G:8U]3$X(!S ,Y@(HQP"."S.&.MO@A5VO<
M BU%L4I!>N/"7&&NRM)MA/V<C*S0H%R7DT<(3C/T,I\M_MBT?'M'O%G&_LO$
M]%%PEYB)]%N:DS"!R^J75ECM*$+HSU@GL;#6__M JX;V1681 M1Y[@N)MFG\
MC\JJ%IE;8N.$Q$7X\I*3E[J4 "LU8319#>V#ONF$+'19E=N,H5,ZX87;+7$?
M?HG8"J;.^F$'7<MN11S2"=L%(U,Y%)!ZE_KM:H^>V*%72G46.+&TQ0V\8:>5
MSNJW+*'BKK-JN*OQDIA0Q2%[S%!O'^Q34N4IRQP%Z./XG>60V@L*V!IC,R&/
M[M6A_N.O,973\FA[N -\?=MU/*SG4MA32HW<Y@Q8)#K8DZ(&=,,&MQ8G0231
M 12R)33!Q-_PWMCA290ZB"Q*^J_]JUD;8]Y]7--[RB3*>U/H&63DVS B78SD
MHSIBBZ2BZC/(9<+=J]AH&BA(HV@ZL.^Y&AAZ8Z]_8R 0.''?^MC8AF)11$VD
M!BN[P(&5WMMI(;94-0'2\IA:FB[D; M9S/$IS"V7HEJZ"VH.:(XMQ=ACC:X.
M7\*_9_EU$A96P*LCNB-F2W[-\G)[N:.W412:0::[+9#C^6[>252!@\JBPW2;
M-!/^OW]JYDOU_M__[;_)?Z'_!]A"__;_ 5!+ P04    "  $@E]7!#R@U.A<
M  #M>@< %0   ')G96XM,C R,S Y,S!?<')E+GAM;.U]6Y/DMI7F^_Z*7NW+
M;NQ*ZI9LV7*,9Z*N/15;75E;E6W-S$L'BT1FTF*2:5ZJ*OWK%P#)3%YP)4$"
M!!DQ(W=W B#PX9R#@W/#O_S;^S[X\ KBQ(_"OW[WZ8>/WWT H1MY?KC]ZW=?
MG[^_>+ZZN_ONW_[UO_W+?__^^P_7MW</'Q[ VX<+-_5?P;6?N$&49#'X\#^?
MO_RO#_]Q^73_X=X/?W]Q$O#A.G*S/0C3#]]_V*7IX2\__OCV]O:#M_'#) JR
M%'XP^<&-]C]^^/[[8OBK&#CHWS]<.RGX\)>?/O[T\_>?/G[_\Z?UIX]_^<,?
M__+3GW_XY>=?__"_/W[\R\>/E6[1X1C[VUWZX7^Z_^L#Z@6_'88@"(X?;OW0
M"5W?"3X\EQ_]/Q_N0O>'#Q=!\.$)]4H^/($$Q*_ ^R$?,X K^$M0+N,]\?^2
MN#NP=^XC%T_OK]]5UO/^$@<_1/'VQY\^?OSYQU,O:@OTM^_+9M^C?_K^TT]P
MB3^\)]YW'^!NA G^ML!'RN;OK?9O/^/6GW[]]=<?\:^GIHE/:@B'_?3C?WRY
M?\;K_![N4 I1 ]_]ZW_[\"&'(XX"\ 0V']#_?GVZJPT2@T/@;Q'9Q >\HV@+
M/O[Z\\<?4^<]"J/]\4?4[<>K"!+:H[-%$\>#[F*P^>MW,>SZ?=D%P? _6@W3
MXP'\];O$WQ\"\-V/:F?UG$)B0W1Z%84>"!/@P3] "O4]^._>I1,@))YW *0)
M;]X=AC)D98].#-OM0.J[3J!PF<1Q]:WY]&NRVEQ%^T,,=K -E&10(D1[+ETJ
M&7S(U=.F\YQ&[N^[*/"@H+_Y1^:G1SX+RHYDR*XZR>XVB-YZ\BIS2,-6JI!W
MQ<<?%(-LOW?B(R0V?QOZ&_C9,+UPW2@+4ZB6/,+)NC[@;[#4*$.NY];QX[\Y
M00:^  <I2QA@WO29G8:<[5FINW A@R<^4GE6F]L O+_X47),H#CC35YFC''6
M E6\-,[<-(O1YL,32GP)U*Y#SOP)O((P@\.X$:1>!!]OPO0>0\[S<Q1Y;WX0
M7(3>70B5QJW_$H"+)!'0E@2ZCG565G66:Y Z/E>.BO4>>/Y02TX1:,\@]*/X
M(4KY4I'=:]B3358'T:-K0-5M[Z=8W$+*A'BAXP)V$SAR!+H..?-<SUP[[_R9
M$IH..;,;)PXA%,DCB)]W4)W@38_6?EB)&R!FAMI.>ES'3I@X+C87\.4NN]^@
M/ 6VB-J>P"&*$:UQ.8K2?IPS^#E[2< _,CB!&WA4I>(G,*6C?AU4K2XZIDYZ
M!I>H:*X=>$!PER4UB&Z=579)HB-ITE]EE\,98%Q=5FSRO'Z:]%JQR0L/H$_'
M%5N(S!CCZ[O":^#V'5?W%9LWK]^8.IO8C-F]QM2%!!%F]M)X I]4!F1*=L)C
M@NQQZ/\1';PZ07')^.+$OT-&Q(3M0MF>0OWAWT'@K:,O#I+UZ5'L/JMG-CKQ
M=7? RP*PVESLT=;_$UE"DQ0NXM2\/O/SBBZ/Z&H70ST_<P*U, \Z*2/0/CED
M\[,0+:W\EWO?>?$#O)JBKW>1GH9;A1=/:+5(?[ET$C_)%]=721UA9F/;EB\\
M#VM+3G 7;J)XCYW68O39<3@C* OIB7"W M_)=?;U#ESMH.(%[D+XQ_-N;4Z&
M&>0$27QXN.(>Z.B*,D'[G]Y9&8$W>\(W[P?@INOH$DX(GA&08];1,TC3 +E#
M@\P#E:OPUS!Z01$8Z."X"P]9FBC>A/&FJON6VX/W%0VO&X$*2SV M)#E;KZO
MZH 0_\KH>"11?:HW2>KOT>WM:P(V&3S+-J"J4/3 I->7--E-E#!(EU$UK?>D
MN==^P?%[A=ZXAA-#(C*1/OH4?DPW.L4<CX4U?QVUFJH#1_9;8V'3M+:=)@P;
M.=MM#+:%#E,TE4>DWQ>TXP#_#?CXZ$>W@VNP 3$4]T6'VSC:EU>PY#<_W5UE
M21KM02RMS P]@W%P9!A <P48GAA73AP?(<T7)VG9118P99_29%'N<2;U&U4[
M)9Q5].8O"FE ]"/:T2B,/OG=!%Y*P@3<1O')%#0@1+V^/ YN;#]$=8^1CSB*
MH;HA"U#O3YB Q&,<'4"<'I$>@2R'R$)[0/=AM6@(?L8$1"I65=>-,^!5S'E#
MD0CO2^-[RGH<,IT'''^5E7^]!B_BP7RR0XU&UX2)U>Q:^'>D$**?H)P&,;Q,
M%")<VD*N]GOC>E1[T'>GP4:*F6I-#?\+2O_RD"\.PEX]M&7%6:_AM2%0WH96
M!S2W\CJM8.TB QNVZEIVQF 0,+ZB'0]L/?%=G+X"&WV%5^8!2$+X*R;C,12Q
M=/NDIBCN7HI0GU%'BOWNL3ZY4<:A]&9$D1(#?H=!]:RVZ3Y&\04N,OWY08;8
M#;5!M_<LE+<'J/N6CKC\'G308\@Q(]CZ:+3R0XUT;C4F!FG/A7]WMN!D]+\\
M?@;1-G8..TA],7"DSZF^GQ@VKZ"6RM!GBZ5'HJWK -D: 81ZW,-_*)JC^:JI
M\Y#Z*1JJ^9WZO,!["D(/>+CH1#FU(')KC0)4@B.*Z]B@*29PCKA*1@+<'[;1
MZX\>\/'\T!\P<!@T^)=O>'H7+PGVDY0C!<X+"/[Z7?OW'X>>S@4D5@\1[&W@
M; G3J?\^^'3*JBW(44N83>WGT29S"YG;"?X3./$M_)>$,:]FRY&G"&6-'WEB
MDZRV'7R:-U!538]7 'D'H83PP/O_!4?"%,GM!I_>51;'M=V[@6H'/*-)[$EK
M.MI6YQM'GR&YW5A;G,-S.OU020<B,3*;CS19;#]T\EI23NH4DZ%.EM)\I,G>
M^@%XR/8O(*9.L-)DI$D]@:V/3JHP?7#V)&(D-AL1L?@*$O\VBNG"IMYJ\*E!
MA1]5-WL^[E^B@#"I^N^#3Z>(X#]^^NEEC=0DPHQ:34:;U,V[B^,G*+1%;#::
MZ$!J:)0'\N*Z-5?H8AH?KR*/S@?L7B--?>V\WWE0<.&08C01CE2AM1]INO!F
M 17WI/@?J+B#3]2IDMJ..\TK^,=5O([>0MXD*RW'G2*FNU7\&$>O/JJRQYEG
ML_FXDWV,DM0)_LL_,/F*V'AXK1%]&5[?*5.K_3P2:L\[$ 1%DAP5K5JCL2:V
M=X+@,DL@2R9T=;#>:J2IW>Q!O(5'[N<X>DMW//#(K0>?*BK^&3SNHI"N [::
MC'8C^7^9$T/5.#CF>CSC3M)L.9X] =E9L86*.\=6T[&N3M%^C[2"R/T]MW6O
MLA050O4JE5+:%RA6I]K$J^:OB[B^""<^U4.#?VQ9WNKU7XL6/QZP:^U[=^<'
M7ME[$T=[DAFK_%I$,BI]B&(/Q'_][@^_HOJ_!WAK15K=7[_[Z;L/60)G$AUR
MRR+ZK0@YOL]QH,X13Q"#92X(=5-7@<$?/\X2@Y:%K83CTXSAJ%GS2D!^FA4@
M%+MA"<;/LP*#;J4L\?C#K/"@&$1+,/XX*S#8YM<2DU]FB G-REMB\J<98E(U
M)I<X_'F&.#3MUR46\])$B>;R HI?YJ60-LSS)0CS4D/;3H$2AWEIGV0_1(G%
MO)1/(;='"<V\]%".6Z4$98[Z*-%Y4P(R1V64X"8JX9BC'DIS2968S%$G)7N^
M2D3FI9G676P%!G^:ETI*\NR52,Q++R6Z$DLH%*NF*8@3<#\%/"C^RQ(7Q6KJ
M%'!I.TM+,.:EF%+]LR4<\U))Z;[@$H\Y:J1LMW.)S'#*Z;_\V (&WA-^'RX_
MI,LSF2-FD&R<Y 6CE27?;QWGD,<,@"!-RG\Y!P\4__"M4N>C,&]3$DP$.O2,
M=N@R_>(MDN31.:+2#N0X;$YC'=/.2WP) 4YNJV'2J&HZ2AYN%$]/:P7**(L0
MZZMM)X2V0"?VA$(?["DS.FB8_F,IXO&T6(1":JEAPA4I!\E6&GWA[EI(J3C$
M\(L15/*I-1H^2!%LG: P8KS[I##/9@N=R"%KY!W\8W.>C(8C10)>1WO'IP>0
M%S_KQ*[R7,%CE.O27%$FT%7#DE8'7(T]W-X#!UYL"Y8_LG403B<-RZ"]R\%>
M!Z^7ED.&4MCO =!6P>RB0\4ZWZB8VE2SF8:IEB5\U\X[!&Z5[D!<.?4>HM!E
MTH]P=PU+*RV$$.87*'"0G*&\PR#(]#T&U'BG.I=LAMP@=K,B=M&PA&;95SB;
MFW?T(@8R=A;%9"E+$>JJ8U=.93(>'=]#9:$/?NH$%5% VQM^1W,.3Z[<X/?3
MPS&-FJE<=J&TU\(K>4W@(_V8K#71,$4.RVIE2]?-]AFNRH0/,>1$B<$.0)G^
M"O*J9/=1@J3(:@//.CI!2(TRC4.1R\S]QM2BGYW*S.("LT)F1TXG/>:8 SP+
MBMJHI?Y5,S32S3/<GAJ5T5,9P-/9S5$_"1TT3/\)5;L*@5?6M:N( SA1W_5I
MRQ#HJ.-LE[T,F*7^"Q_C9IS?(FRKG4'K:MN3O]W!D^QKDNO80JI>LX\11GAA
MX[MF.N9RH#',5SE/Q,1&JZU>I/GXZI,17$!-P))1J9AA#:/UT(8U$V$3/5H=
M/5G:8E3HAS I:*5IJ&HJ[D6PBFWQ;L3SGX6/H(]_%G QZ8@,J.6X\/W@58R(
M3G_+$9*-&ZCBQ9)DEL-&CDDX!>4V@P/F@L9],\Z@+8*L)Q%&=$@]&K4,?; 4
MAQ9Q" 125,FER6*6PR2G%O)".0JP/JD$ZQ7$+Y$I< DKB-QHD2&@,HBN^*HA
M.PS%<GCD-)YVN(OUC-9'010/N;&>RFCJ(DN%F@LH3*U1G/XLATM.0>@3$E8
M^9.E0 JK#NRXLEF@Q()'+&;-<ICD#D21F#C+ >NC3PC$X V!GJGZF)@(HP7Z
M%4C];"F="4OY>CCA+%!AP=&2W+9"(2FY9<,F+4>OCQCO&9DY'V1%_)^< ,^R
MWKRUYZ&PG!>*(1T"+H-HBR_^68&IUM.2G!@3"8*UG)YZ*?-\<^ ,8!,07 SE
M_8]* 8K@5=0,@,1--$3Q;3<LXC?D5MCR(/B8PU=R H@44F@Y 2F*]B&(:EL1
M$V Y<@!X6<344E931$D#X30E^J&2SI\LA:0/Z3"#[0?!S1R6$R6E$Q!_7@A(
MX-!O.9#5PF8._2@2V91DC *\7X>D.9/K9SYB_'<@]5WGE/=O>C'-I;3:!$NK
M=<KQ"H+H#1'K;11?1]E+NLF"=G@#)R=7:HRE?IQU]>/J^3%0X*UB/%4/QT(^
M@A@75:8L2K"S]F7EA:$OLG0'#[%_ D]H.:U.ABSC+DDRJ244'0R9/OU5:-%>
M>DOB2;*(2$^]"Q)D#E8/$Q; 9 M::Q,FSF<((Q])7[+FF&BT5,C:G5Y.<[,4
MLR6I;DFJ6_(NQI0[HLK^ I; %<+RF.[N()6:F.4Q?=T!(KU09&M8C!A*0O<K
MZP,=))&BBB1;_=,=$6K((UM=B1W1(0FC0;UEACE\3K\FJPTA 6 J7A^1!(;'
M*,;TF*:Q_Y*E2'U>1[F/BV.]5C6ZKEJ.E*G#ZS?PMV%^T7:/^&%%.$VTBM##
M?PMR#O;^GB5I43Z!54)[H(]I@*T,@"Z/7PZ!4)L;,/5+)_%=P7GG;;44P$=T
M<A)&'+AIK>?QDM=IFDF<5J8(_W:>'OP+*H+B92Z.*GH&\:OO@H3H6F2WU?.(
M$)K,%Y"__DOQDE3;+ [\"3KPG\ K"#/ >_BQU6SN;OC? (J!!][%*XB=;?%(
M]FK3TF<YN$H/8_!266><W!CZ^. 67F=0]"?"^C<_W5U!-0B><C$\[/("%"@4
M$OZ?1]>_NHPT[F&TBHOCA2!%J<UTJ<T/\!95)I_D*D>9:2EP7>!WUO3.4*Y<
MYU-B/S?4;*G%79Q@I:3 CG=64)MKFOIJ@VH/5+6JYRB@>^FI'0RX1ES[0992
M(PQHK76(T^CH!.F1J3W6VYASL!6PB49&R(ZBYQ5  &>1%AQ)E3;U5EI.X00X
ML8LJKU_#8S2(<+U(]K39?70^\7*VN]#.*$)+^0G'6Q!^7]H=\4S0OWR[V"-C
MV#^Q/0>2(WA)D1$:17P@&=>8D4@/'9<I$ 2HZA<((5 !W.$+;^^'/CI/4O\5
ML E#L+-QBDTGA<;LE_ NXMB!_XI-W%<[],>[$%);AN),>"5:/E'P&.OKV@QQ
MV&!;W"+\,(.S+.0%G.@EV$0Q.!73 ,G-.R3K*(8GC!,?L34!9?ZA^T>$N: 4
M[DQCWC!?U "@+&\9Q59-_5E0S=9'J) <BDE<0EF[H3[21VNM@T! RCV=ZVVF
M,,EOOVJ*)F[ZFC@N*E8/W2YLQ4[,5D;_ &[ (8(MC:J?Q',$5D&F>-XL#TCE
MN.YF&*HKY'QK/%=0=7A9"@O;93IJRD1@%A#WK)"EMIO,4OHP(B'"#,KHZN*K
MTHVD[\Q2HN(YFPF<)N>(LQ0WGL\.X<8YY^QE3SGO8+,R=\L!9RD)B?KPZO&Y
M=*>9Y3#UN6F<G'.6IBY):]0-)Z"EL/ U:KH8'P(2,Z2S:"8 32I9__[9@-HE
MW8%M.0OV40D:'G*E2/V:(Q7">U5:M-6.E8Q"P''+6TY5O9*]YYV:2PR%& 09
M<ZI(R@LAH7 -I:A-72")QH4L3"A!D);GRG=7#GCA.I8#)\.8HX4$68ZY&&</
M&B<T2%&(*1_3 L%%EF,F:T2L1S%9#HX,RQ(BII;*(NV()\O?<!##A&Z27HJ)
M=+*C65Z.OP.G??MUH#K[4T-%6?!?:1*SU4\F7.B''AE:0J36;*C[90=:61_2
MTQ8%8(97]:F4!.6_[4&K<<#L.[.*(1+3S(%";!2%<![$:@CLMGJK2S/S/]OM
M=!)" [Z$D!LOUF>I.<*?+DT6MJ;;:J@QS>W"A5,H2B&C/\8 ,!F2WT]9KN<Z
MSL#7 [YR7P,7,Q-L])'(?@(=-("\AF.O-A=>?O SY0:QJ8ZW;_)JZ?!N\8SN
M&$[L)5\/Z.!'2'[\A;D&L;XZ%G7*+T$I*0_@[3S3QQCJ.5GHYBH-0S[*C6$(
M1].70VNM97<\/U>,'QW?NPNOG(,/%5XVJ3'[Z!#_@H455)1.H.7&OT)(/'0E
MH8O(5AL](J9\^IUV->6)&<'^4TAOU%.1(H4G-?!**QR[H@FYL2X5*R\Z?)W%
M2/ ">,?.JUG#*^HK5*APG,'7T$_IRJ+,&.8L,I<;/5=)&\2<9>)]*%,<43WA
M/7(H8/M!APVE#&3.<O,-4;%>YDAZ5:XG@&7U.EH[[RCK!=U]X+RA%B6U\#XC
M:E,(D'8"I]5OY9V&,H?(,2M6],PNHKG6W9RE%2\%=%X;H;\R=9!STI%B4= 1
M'V7IHW-$;$;2'_L/.O3Z3F><T@7*C*I7VJXCRMT(+^&E*2>>0$Y[H$CAR)?[
M!-QH&^)1\-;R1?(PGS7S=D(K;2%9TWZ(+QE*>WA]/8@H[S\MJ^ZW3[],RA#Q
M[=.?S/' BKCE9EC_0\B%1GF59FXU0%B^KUHH$AG+N<#$S_\A SD7?.Y9L2"D
MXV$(8 ZY$IHZ<6H&/,+NPU,J$,>;9SDYL3R!M0>,Q=QO]A; Z.2JJR)(1MI>
MP#AN/U(>"X-I[<5)6&7BN"-GGQ<LR:%SKP8Q4L$""S2$MO_:<EX3%TGB'O.Y
M) =3Q1/U/!P"F2D)(G(:DJV$(LQ;M%B(N>3B=JG_83TH_$N_>!C*$)@95?2I
M%VK4N)8A$FOM@8T9)[-DW7:-N!DD-W=JR/4*W5&:OFMB11^96Y]L](_2)-X)
M@R<<1[3D]\K%)LT[@U=56-0P2;XVH"@5?%7":.L55/JT'2ATJ\1Y[C>002*[
M2G#5%@"RD8B+&+ 2L.5VT@X7.X&C] *2NP9NPFGI@*3PM!,^2JL#D? 9O<3&
M"15X9'JHAI9'*[IQY22[VR!Z.\-F>*T-*%IC  ^O:Y#_[UUXJJ!;B 9.P0V)
M ?0\%]F87>$0A;=G%_BOC%H<0EUUA_0BA2)T_0#4' CK"-'A8QR]0OW.NSQ^
MA11;V9<+-_61.Z]=3H\5_:OJ4QH@NP:0_UP_%Z2A5RU\3%DYJX?.<AL5"2->
M"*?=9:E_0YLF)&XUO--AH"4C6FI/;OW0@0*I_YZP!M*P7#@]%P /5]C%JN@*
MZT[)S3N(73\!'F5U_'X]%Y, ]X=M]/JC!_Q\'? /Y^DSWO$K)DIJL=0NLJ 8
MT&T WE_\*#DFS/H6I&:#D^1-[>W(%CW6?C9'MN4/QBF0;:R!=,BVW+Z(#!$Y
M+994"O)JEV@)Q2]4,2<SA [QDAT. 18;3E!J7C=!$77)T=E$NNHH28(*WJXV
MD*+0&YCIZB6/RKD+;]Y=7$C_-HI/BLT]NBR="N=35MIG1$-D\"3*-[4OL4@@
MA/!#/J!-G]U'QXVW]E#-25O#Z2JTFRNKBT:YIZC<1N?A9E?/JJ84.P& E_DO
M3IHAX^1J\^\@@-B5?W\&+OI?.F-T&TMO08Q/5-VVTL0(P?08@X/C>]>%=;A\
M%B/,_4'XF!"76$*#Z4H ERHM8T3QF">(YK$T<>-PP-1_"0!Z,XQVP#-ZF*!W
M/D>;] W"*ZIDGMJKNS0Y?HR=P-37APJ?_%G*5Q0*XOVJWXC*5E:RH]=V"6!5
MKJ'\D98B.X06HW(N6ZCOJU ,R^Q>YEQ!"9;*WJ9.C:P/=2+>(U\$.R!;/'0<
M4T=9]\T&N)!ARNO5$V3_58AV#?T_<G*_0H4&:Y3PFNF[4#C@>W3HU?^ATA)2
M<) A;?/:3PY1X@2?XR@[H =;_<3-'P8#WOE=, J2!DS,A.,(\@Z<4'I\#)PP
M16]8P7\]$,I@=1C ".4.JUUG@2"GS!$[:[0"#/[4(-.J,/37-5_2RC=HT51/
MY7$$+F3D?CH>H^@CN_(PP38+%!*M*B5SR4E!9N1)F"!"[\(4S@I=,ICBA=_/
M"(%9QIK Z7:*42G[*5/JT:.=D$S*USIS_96DNI,;FJ/7BFMY$@-,3<X,(39T
M2@&HB5</ ZPQ$%Q?')D@.HHI$B*&BFQY<LO8\PE=-2RI? \WEQ:U5VV)ZZ"W
M7[@O3;YI*6@I[G7N[;8V@^ODW)SB_<U87,EA.+TB[2):&$/HCFV7#W5N/*,L
M$$FLM$27B4FB0T8?5^%FANQ:7H]0)-IWQO5UNX?H\BONS PS@1#:*F8"D:F6
MXTBOS$,,?YT+&O><VE;2_&HY</+U]X@AMD.@9$3N,".6O.2U>EROY?32/4JX
M)KZE@F^M5V5E G5K1>GZ1,-:3JA+P6,]=]%:5*_2RJPF<NY8EU!VX+'E!7#5
M7+.&V:IY0B][6^L<<VZ] .E?J7BV)=.[J**6LZO\;6YVU=0576"Z)7-8CFW7
M>TP]2\1RD%0KW&+9*DKKN)MXD(ZEB7,T%5NK%*K1P65H?YZ 2FK6S'0HZWF^
MU^L$MA)6+^6927Z6 S>0:?N<WV<_/TKJ?TJR#RVGRF[J8K?L1Z5OD)A(H./%
M#'$R,JU_[459:(QP0N@@CPY%D+^,!K2;);9K"JKU D),>3(@5=3V-[8&4L88
MV:W6T[9JPQ,YDU;I@UPFPCB6#C%:CN\03ZB9+TEZ!)Q2$H,MQU'L:!P[YW@0
MT(W7^OH>@^T,9>O%]E Y-Z>T:,N?4QSZV&.E=BN%UD3B5'-&R:29#T*MYLC-
M$0ZK83#,7YF!TX]3,Y!4>P()9\=;S_(#G$>M)/PAWJDURLHXUEV,42! *<8F
M$NH(HO3;+\/0JF%/FJD1I3*%#@9YJ-J<4UZY18N3*Z/T/3F#='O!M_:$O+M#
M0&74F3.(&952ZD+I2]\4NIO"&X:/>%=V(/5=M. "5L,?-%R>2EN>=IKPTT[Y
M>[.E*2;)P[-7,39^PWU^R%"ZP&J3O\":_TI9HJ+!S8!E>?%*G%-OS'[QBI,B
M++"GW83+8 ^9+!6"3$QBTU>@Q3 @F+<+52>0M95(EHHM$ZK88@;G+34PEB3L
M)9=X#OE'@4Y[3K;?._$1'L3^-O0WOHM"*_/H"#_</D:![U;JMIINM6G/G&.S
M873087=@[<$:XGH9T%^Q$.RLF^WX6U1C04%$QJB'-3IOGI*KO@ GR>+<L#H5
M5D2A[T&$IGW:)@XOLGIH8,83^N=Y<7F0W4<WZPEL297W. !8R7+GI58TI]6F
M=@F;"@<28M!1"6P4,UI5"]E,*3F(&<]I$0A=?'FDSKHYM]M6<A(2B"A9SM4X
MBB5S47$?J$<$3C@59JY-'(?CX'1J>M1)@]#%^VMY%Y@S.7&&[C24;O:6WMQZ
M%9$NX%G)YT_@%8090+&$\-J05QB8!GM/_.): (^B@E'.&IH&*A%YE25IM <Q
MGVD%N^MF5+G+JS@JX]CS1^?'SU'DO?E! *42[5G%@1F3XJVM3*R(8J_/KG(-
M(+-AUU$T\"9C$\2/5<E!=/%IS\VM,J\L;%8>J-78ODLG0'FSSSL TFN0.OYD
M8ODF;XJJ!N_6MD'<,B4UA.YC5M)0)0>/I6=MI8#@,PCAPAZB=#J.&U3SD'OH
M<AIK8,S[*-RN0;Q',^)Q(+FM=E9C E_E,LI:K3SW<%$(5. >3B0/9)H*(^6S
MY3!0HY&6".LFP$A<B>NCXOUU,QAY0UH%M,6PL)+94!T6/\\#A<KVJ>;-E.(.
M&$L0/M7DQM#Q5K7(!'F,*SF(;N[MM+&UU%I)T*SD\%,ES>EP]&G*POS+ZJ'G
M6>[F='B\R>RBFQ,%-J21JLE8OI5<ABHM0^&""G'AJ/JIL%ISWI=.XKL\#9;9
M1P.[-2?$XS5Z>]V,)K0=M8*J]*5;R6>%@_71B=/C.G;"!.+BX[*NT^ WVORY
M$02<;EK\CN0YR<0+B(^@FS-%-Z[N@Y1 R$IV?09;I'X_@0-ZA3/<3H5-F_/F
M51^@-==AW6G,1<*N(]!3-QOR-J9FVQ%!PDJV.Z_T.7M)P#\R./@->EUX,OQ7
MGS:W^@>MN19_87TN?.<@K;UV7N-L0MT-2%VUI3X_L>2M)8EKW'AT>%]*5IO'
M*K.$7J_4KEY#:H#@ ;Q59A1#BLU"-T]?PO,[YO_E+5MZ&-W22BX\L!^AC*$T
M3 9*>8(;([E9H\Y%3!W$B<Z3.09(Z6><@X#915FI'T*U5/R"=/P[2!T<?E.^
M&5U_2QK#3Y-Y*D?6XFU !4SS1TP")TF@!$/53<NPY\P)RKE>.RE@(J%D2!U*
MM[L#7A: U>9$AGFX*-S"2EW(@B&]5?B$=A,E;>"#0 @3M=_0F50K,-NO8005
M^O@53?HN/&1I62/:Q\)*.!=7Y:=T0B:XT[#!0Q3&M?6A_L5*W%WHPTN2&+V-
M\VW=NH;(27.JDZ)*^ENNOXEBJN8 L;Q4C2R8BH\BRQ_IE45WF#/,\B<A.X,\
M[*DWQK-O1A:QF-9=\"S0"(7-DLMCY6_,8M>RP\RHKNT0$[_GE,]F=M%ZA2M2
MR/\)O#L/<@361@I)E)?1\^H2"?Z6[8$G>8E3\Q4S]GHIK;W4ZI&QD?BAGT(-
MZA6TTFM/M(]>CDC/LKJR+ D[B:+OZ-:?NIZ ,G50+2P.*W(HD6].BDX RZ_Y
M!M>S-A"E[N6[Y-E_5CR]%,8>[\BX;Q5#GD?];,%S0YEB8[F'NE6);UH6":OK
M\56UH,HTX5] _ HNCVOX[=7F*DJX10^ZC&3.@L_[@F;(#Z.4'$6WD.M5=K 3
MC5BNYPT!*)T&K3P@VB4<IW4N3#QX%9[/SG8;HR>LL<^@V XANZ987RV%"]K%
M%_/+U_D&SX[.ZC.2;J$D%TDI2 "6"W(YS#K1EY72FU$T<50QOI3]K*@3Y7S%
MU==V#V5N&>)%&9.+!S;TJS,_=E;-P#KB^Q@&@SW*&OPG9H^;]P-Z;ELL;*_/
MD!;4;F72OK5O)RH 4"6+#G' V8*S&MX?(B[/@*Q&=M'A:5T'IU]Z^"0,4(1N
M"#]PO,IBQ!J2L2Z<[AJ6]AA'!Q"G1V1\1JHZBN@^X <A.8L2Z*AUI^#M)<Y
MU3DMN5?< 73?SV0+1 L3L;7*04?D1'C$VH.^-[7Q&='>(YQ0C'QB1_<T2Y)7
MH,>5N@7-FHP^ ]S]RP^B#R'2@,HO@'20%HHN^W[/ZZQ=7 B75.?LE>5&5CY.
MLE0S<#R* 67HIR5"IU*,_D1A-_M#$!T!/+3B5Q]=._/ZE\CWND<TEK-'@*=1
MN$?**-%' $E.-DY ]?>T@D>>/:;A%6:^I'"$B_G:% QL(!S8M^^[*?#P_+^&
M?II<O#FQIQ0;V:_H/@H$'DD8CD<M/V9EL.W.PI9G8/<'49KQQ\BZUEZC?&+Z
MC V5RL^$^AOPMSL4GP:U:F<+'C*4C%'0KZS)4&8L[<PL6^&\(V16UG5M5K2=
M%@>+>F&,\KTD^.KK A1E5*@T?O+[Y1']]Q;.+>(^L-QE)-U<*F5KE8+(2K[D
MU/X[E8I%.HD3'I.N=8RF]?3K"8O+8]65_#F.LD,IO&A!-")=M9;:0R'VC-H0
MA(8Z[-&0QM#+5W52N^=4AN#U4F:31D9(&JD7$VC/HXC-*$+R2=9J%<-JIZTK
M)P5;*!_S(!1B#06)CL;0'G,AS"[&+('!]8P.6AYH*6^]Y'EUV*%>0RHM HO.
MRR@$Q_S0O,U"CSQS@0XZZTJ:5E^WD^R\25)_CR+&3G-4)I8)0VO8KJ_/ZQCK
M<\=+/PC.BV#R"J>3LBV[>(4Z(5*(;J/XV:DJC[4S#5=E(^V+5'_5/$S0@F6Y
M6GB(<9@$8Y;DF$FS0:WS&!3BNMD^PQF.4+=.DJ\A)-D ;?GG=B&I?F.-@K[@
M(F2'&&7N_:6H$F$I34-B\Y;JK]O\(7-S)1?2/5\/[:UQ(GB[/ 63*+GN6>XP
MI!L8Z'1&OBK:2W?B%^5:O!?SMF,Y6?%OLO5W*_M<'.TE/!47ZEHM>X:Z:SE!
M=BY)S3R1[26]KAH)B_'MK2 VBF9"TGLMC\3I=O+RK">6@Z:6=>];%0"5!BE-
MDW_E3&"6/ZDAQZ3=C'&60ZCT_*@;!"U_:D0AYW),DV.\'C(A(*6MH@5^?USP
MZV29+>#[98&O@WFX .]/LPH".V<F5W42"/*I>9WJSA"2GV*;9BR8-H=W_^J2
M5!)'LJ/8%O@W5(G.#U<A^$_@Q+6]IBQ4P< #.:A*6A->4K<Q#-[,9WA#"T#U
M^4.N4WV03Q@,46UC:3Y 18,:#$-[&Y73A7:M0-9JJT)D+H9PFI(J(IWMM?$.
M18MB$G\0 TB4.L&TJ%+566&Y560\6AW(+M*@3'/O5K=^Z(2N[P2GIVM/_T)X
MP_8B/0VW"B_JKP?G]ZO))-=9F&Q3F=?YBNR#&/+=[G@/7D' ",47[*QS63U>
M5VX98FBK5_(-'5HWGC=!;M*4:FI[G3M<E5%M*F2^UBHWALY%XJ?5$\Q2GY@!
M\:P>2W;/_+)[>D,@E"K :;PD_U1J!.[@16<-XCTR-\-C .XNJ@?M0X42*SPD
M8Q^WCR&BZ6=IT?2SZK21^P@J4W+H\KH8<[&1C&T15>UF$-"G4@NLW2'I&M1<
M3&HRZA>1.DFJC>7@+9'B)D6*\S0=RXEQB1+O?!P+6$R(R(G)S%E N 3:Z]-B
M!.\C<PD=5ZG)_+S$W8O=3=30M+U1^L,R/_>V;&6-5A+'7WB>GR_G+MQ$\1Y_
M;-3P/YJ]J*QK]^QO0W_CN^B=FM;KK31?1:<A-%B3RN0E7#HXIW<7GO!Q'@_P
M!:2[R&LL3:JKAB5=9@E$-$GP;!),7,7$ -,IP>^GL-X$'-Z#YY9++P#3:J/.
M$BI$EB2GJG1W0[:?[O:@M9ZEY5P9]E?1_L4/L:2NG6OKV F3XL0ZGZ:0Q-&;
M:30YTW-096QS&X#W%S]*C@F3;TG-M#XHVO$@JVJ-8J>$Y?8:X7.EDC?2%/.6
M0M3U6*G2&%5NS\ <(Q(>*P6OI70F>,;SR*K!M?81F"JYW_<\M]P((W\B$'4(
M:Y\Y[7,L="/A,0C.W/A@]!Y5Z$(N+%XJ6._ U<X)MU #@7\\1P-O*&8G]'Q)
ME*732KZ\!K'_"J?U"LH\4E09@GG39W915P26##*CY"NS@X;KW!FGNQ!J)1E^
MGL5/?F?<IYE=EGAD,^.1*],5#TKF=)KH7@NE$O0>?[$NJ8H\1SE77\/H)0'Q
M*X(V=P76#\*G!J?E>W9\!BD\V? 1*A&FKNB#QACG2"?.11PCK0'/M%0@+O9(
MZZ*J#J=%?I*RXJG_NC' 3LWJ:>(I\NT/VN]X(NKEN=086^6SW"HCHBY6K0ML
M:.VSRHP6'<WCQ"&@/> 7D)]3)T[-H$;EVB"9=$FD/@/2E8U9[;\),P!U*'DP
MI.)LN8EW4"DR3##>$HDKSR&CW8V&B.LSPM:O>:ND?5)JJK'\FN] "+:H".1,
M=H![9QND3$NN8-Z$WB1<,6P/R\W[ <#;3G0)GD >1[..\E,5TFF0>:#B[VH?
MTHM_9O'/6.>?N3Q6&.DVAFP!N?$H5@.'VM,0(_5I4M)%49H]==2A.,\&BQ\N
M]S(Z*./=YC<>X^BE4+)6F^?,=:&"0&=DB=X: $<TD&LRP-V%/MQ_)MS4YNK
MAG(/7#EQ$#W[N&@]4THR6D_4)]A2AA;_KY'^7Y+@81P@U.:JII[$:67:\&_G
M*<._?'M"ET<B'S5_'6E"7_P0<NR>.J7Z[V.B1-C%^F\3E2S61AM,)P<+%=$\
M!65RL[%(K37 "V^)T1X\P]L>%E_WZ"/L/"=6#W,6P*0-=A]E=/%TC2H=1/L]
MB%%AU>)M*<A.P'MTCOMV*9,JF8AW-D*Q9! ,I?$2N:2L9N9)<HL5;V-U-43"
MCY%F*7@A+$.9X?XCV_P3%!KB]T%Z9V7SK5PY?P/^=I=" 9%;\(K-ILU5K.,0
M\SQ=C3G3.K<;2V]UWMEZ:^UW=0<%> 5AAE2"OT5!M@>B1X1 -P,N3X^Q[P(X
M0W@&H$UE5Q\5ZJL,^)+N+UY![&Q!E4U)@+.:JY,_3IAMT!M62"JCR_S-^\$)
M$RCG6'8H;J?!Y&-!A3D)=I.2O"&T&L1O_7?@W84I@+*11!DB/92!?V8%-"[5
M.40"7;3K8%*-QUW,]KI=H4OPYA*\J1@G"8<5+P2KY1:R%S6^$^G$AC*N'<MY
MDN<).F/&\-!8CI&5P=0&X<MSJM0*^3*XW#[91O'A($ (WA1+R83HHBDAJ*%C
M'P$LF09&U=9@.70LY3X)?U"5ICC>%WN)2LCM="(H"4^0Y?3%]AQ528NNLMI+
M54M2U)"@\N,HN:7^6YXVR]EU*8\VN%6"X5^T/"-.V"@AZ.)<LM:ZE9 G>V8M
M)3[>7;ON ;84A%'NF[PRK!;RJ>2M0,3M;SD%BAV<DJ$%8SQY,7&NI9\&S)B(
M!5EY>=@P;-K[T(V<]!.(<[&<VGI<&KA!-TIST\V#;G!?'3/^9P&WNU;(-# /
M :P9LG'8,ULX+&R(<@ISH5R:Z7H(3.= M.SXP +5/RZ4VJ,:%"NR; B [2%;
M*K;T*)8"T%\60 TH7?:G@79!8YV@BAUMM:D]_Z'_Y<O>\?;G>D<$LV%R>:S\
MC97J+#W,C/+=>D\</=B='J^B_2$*(1$Q4VS);35,&D5=1"%^;HZ9>=1NIV&R
MIVM1 [Z$02#L/F;0=TL)Y!/YO<XR)H3YW&PVP$7V@&M\PZK\PJM3+SB(&<LT
MK;:"JJ<RM=7OA^H*5FRJ6+%3SB4',6.9M,*9N5 JS6?)79)DP(/+07]@G.,J
MOZ !H-*)MXX*OBC7 Y+/<=3*>Q;NIHRM>/C>035PG]>-Q'(K@5>%-Q+C=1O(
M#)IMS"V_?V!/S6JSRE)DITSPS>3?_>U.G%#EAC5#[!.9:!67//20(8FZVCSO
MX%VQ^%7BU.LPN!D48JY4^_:+X1#9_#X-8<:HW/TV]/\)O#L/BG#(_6B7"I-&
M\<)UW;0!?\OVM26)XZ/D:Q,'+F\R F;%AR8.%Q0E\ CR3XU7Z0[$ZYT3?HXB
M[\T/@A&0Y,]! \CEC&_]T$_!/;R<->?Y!* PRIP ']H4F&1',8.:*H?T$PA0
MX?FK*)%A*MH 9F@U:"[%+1L=J9!4TR,^3>"]J?A9PB(A-)J&A7,8F,Q;&KP(
M74V\,C&E%J86,*VN56P(ED[+LU.$S*55B"A8VDL\(K98#G\Q#9]#(&?4(S3R
MR<-$BZ7EC-C-[EDE//G#859,NR3=#:10<(X0>U-5NIX,2JQCEB>U#*3I5O;'
MWB0"6;KDNUHLSR(0!:R/W\?R@'<%LE#2EV1OS+"*&T<79]00X:RFWT3&.K"_
M_3),=.M<\&6]'JHT4-4NF:K&IU;@_.<%Y\%<< 7$ORX0ZW#;E9<IVXU+HO!+
M._1* &V]CBJ@7ZJCL,1N[K>KWE[($LCECM7T:I;(#)JT:F1>SRDU:K5Y &G]
MM%C2>Y;T'K43IY^7R1?G[U%\%3A)\N#LV;D!LJ/H2 G*DC3:@QB?9(AP=OZ!
M_+:.2 \S2*PE2R>28:-"1[YRDAW\ 5DQ7IT &8-'B&4C?-0,2E@R>)8,GCZR
M_O)XEM.,@TMF!"WO=[V"(#H #Q?KB()H>WQ"=<W8<I[7RPR"["ZSD.DQ+!1)
M. J H@OV'$5<TCZM 5)X^?+ WHE_1\4&\%^0/L*F#':?B=/%7?@*VT?Q<908
M\/);&D![B%#UJ0-(P<46'G7T]S4%.DQ\SVL,^0AOK8[OW;P?0)B@BCS8S#A:
MAH7X7"8.^F,,#Y<X/3X&#EQNKCT>$%&- #+]VT-FE7:>[NJ _6CA]AXX"<"G
M\&KS-<F[DA3(\3X^<2)<,H%4)E),;_\QUNA@JTK=$?:<_-V)@UD<7=4?7%S%
M+GETCG*IP /.P4@)3YQVG+%28O7,P4CTZD=4^?NQ6-"X!V3KZU-"#$HDO:!5
M)C =85@>AL2%/K0TM*&_IMN[N>0V=BLLV<WE5,MZ9#ES9I)VI2,PB>1TF1_<
M2RX@%:4E%W#)!33B)*$YM&I%B&4/(GN15*'*2.V&O3F6"M0;KA]S"/1LR\L8
MP&&Z9+ N&:S#<3W'0[UDM Z8;W%RA5N.L@(R9;G3EY3A<4XEMNM^V87!=H'A
MR[?\E2U1U,>."5A2P <]&$43$96FB$^0[*D93$NJ]VC!#$O2]]#:!ROB06D^
M^*\Y^B'8HK33:>&O*69";4;XL@$281=J<\D7Z.7B-]1FHT\9_<'#.X;)5X]2
M)S N*SN)ZFG9-TGJ[Q%)P*O')@ON_0VZ=Y^2M9?,["4S6^W$E\SL)3-[M"7P
MR^<DOP%D>H'']"L\D;?@+ 8I2^PUI!F[N&15+UG52U;UDE7-M(R.D453_9JN
MW&G!=&G-&=*#)?O:$X^QQ)<O\>6C5EYDJ8[S W.)'J>BM$2/+]'C1IP32_3X
M$CUN'%$NT>.&^4OX%\,E8'P)&!\X8'Q.,>(61"]K=&X^ :@_9VZ:Q7ZX10&L
M%Y[GYZNZ"S=1O,??G)8CL[8F5%0=RF3X;R!^!3P7C%!79:9[1'=.LO/+3(,W
M2%Y0;FY(]GMJ6PWVM.?L)0'_R.!$;M!LUO!3#$LVK;49$V>Z<>CM54T^B=/*
MQ.'?SI.&?_F&WPTCFBJ;OXXTH2_.N[_/]M0IU7\?$R4"!=9_TT%O)UVH)EBP
M4#F_G2$63<$?0<,"*9.Z0,]$YPHPVY,GWE^_M&!Z#,AM=>_(U<Z!AX?885<T
M'4N.0*V-*4=JOVO',7^914QE2+2KQ#(*T,G&3%=&+#<T<[29FD69KC_89\BC
MZ!\(#X(F8"F1$-6+$H(:.O810 \MAL,TMGN;I=4BLMM* &Y[,>3>U1@T9KE0
MZGK.LW5$2^W2O&.LKHA:"D)/4=XX!>WUM*GAJ-H[CK;:W7MJ!6)(#^SJ,<GP
M_ISM]TY\;,)Y4ADNC^@(7&T05HL]OI\]WASK@/8=8!CN>;UT!!UC%JA-C&G
MI[=?K,'J%WB'W*C@&8H@[$.]1Q]AI]:Q>NCF$]O,V12LF?S#[J,C+Q _H?WL
M!)RT@W8[#9.]V1^"Z C ,T QSJ%+]N3Q6NOA P U0536NP@<0[M?5!9C+D*D
MIS+_^:E$WV^%K9J>_D9KJN,8  $<;OL9A'";45[]A;>'EU D&*"8  56;/*6
M&T,9X!>N"P)4>P&].@[U3=?'XH ..[N#NAQ(Q\45(,JB=S?O?HJ/0D8^)*>+
M[NO5 #?1&9K!:(X<AAYIL46UWXV=J=W9B]IBR^^/H<#%0(#2[.=0(16]EI/8
M5H<M%_9<"T 5'JH";CE(P]EF;7< 2'.@T%7)<J^2$$^R;VR6(V2#LV1*7"EY
MQ[;<52?.GYP+_H*3H/5@=FE#)^]E<2\Z%G)M';6:+L[+Q7FY."\7YZ5ASDNK
M?7^3]40].D><CGL;Q36 *3.G-I^YSZD&1B$&GT$*CU[O-S_=15F*7O']282T
M&;W5@WSA_3U+4GK!-EYK0Z"6P'4^SCJD,W=PV+&ZZ;Y +$Z[Q6DW&<O1XKA;
M''>+MT6CU*?KMDJMX28^7C*F/=Q"+]7B<!E%$V-=E)2:PDUDT0XT1KBM6>XQ
M4$EFUK_1J]H-M> D=)4>XPUBK:XH*'TR4-3F1..??%&PD;/=QDBJPG]&D.*F
MTW) 41;!LK0SNXQ4X.<QCCQ(O:OX&<HVWZ65YR(VT_+6$7ZY%+DHH\!W^>9^
M1H=Q$4X@XQ?@)41W$KNM#IM^/AFF"Z+>1L<#-V0>:IWJ8JQWK]??B^=P"P^9
MJRC$-(ITV?(]B[O0#3(/W;Z2!,#_\];..]5@+3^2C@5'1R=(C^Q$I5H;W4>^
MB) O"S&0):N]-BB^:*X5.F<B:1]*0B=!S>I4E[Y#(&)$W7>>$M)@)Q)X]E&+
M[.E6O[-V.$:L)2]9R2V.O+4O,4B+JL8Y/@XP9EYEX;\!_Q4158(S#?(E$E@R
MJ?)D,JVK+DFLY \^G1_5.'+N97)C:*E@T)[@>7<O-BF<;Q!$;\B!=AO%5W";
M_?0^2F@WCN[C+==LZ;W;H2)H=Z$20NTTEB$$>YJ8!%&>^VAYK[8F,6FW]T8K
MW<I%)SJKYX=V%C:6.^WE;I62&V&]UMM+$/* K0@7RXFP-WPML6;MY:$CWW:C
M4^MO&I^CR'OS Y09V7PT*X<L@9@Y<7R$./_-"3*PVI1=IG6E*&?-L]NWVVE0
M4LI)<.:H-_VGG(58JD^]M8:)7[(?OFU,G-9:X\0K[T_R+DO,+H9@3WSH6F 7
MZOV4)2-<^M$F ._TM(-Z XU"H7Q@]#I/I 7P8/(X@H+815U^"8JB]D#E1?(V
M>JTV&@%\S&)WYR3@K$%4XM4X2++[JDN-(;WSWD:5U$PCL/#B"/QM>)5!72AT
MC^O8"9, 2Y_/D%<9IBN) <P]C;_]0;M.3%5RJJKP>3E#7*H.6+@\ITZ<FG%/
MX"@LO ?O!_.I&W3[%-$PR#DQ#4AG@A-7C3G%93:TBAGB0TGA$X#2<K"D9#59
MY[,\=4-"<A/ M!P<>5G45M,MATB*PSB7 LO35^2IB7A#L1PE*8(2N0PIS5\Q
M,7=,"C%X@1HD1R6_DMR$54Q&-[DS#.T7GN?G*[L+-U&\STL:CFE=IUDA_-!/
MP;W_"BIS+KTD/DAHMG3)SCJ>0-D?'#]&LGVU:6['S7L1O\BY]\N-H<-47Y;)
M9%KHZXV46; J](ZST9H(G5U0%%MVUU%T!#/MHSCU_UD$<C;G2 MH8G?2L(P'
M\';MH-SPBS#,G*#$_DSG:Y#0/ YB?;7DO#A)%**0EL(#W'F)74;2=?YV$]^U
MTOMR$M+RRSI9E)Z587&DK8T(ZBGU:_;%!MKVI5_TYT_>F6-?S9/^F D></:5
M3^\/7:=C=(CR#('&.YQ0V-39:MD2?@9<Z9IS8E[AZ(TU*')$\LWG]3FFNY:Y
MW93=>.@;3[I_"74Q"^;+XQ?G[U "!$Z2,$*G9$;0\OJI!S:]%RD[BGD+/4_P
MP=FSP["ZC*2,K=:QXX&]$_].#X-I-C&+;22 EAU%2_X,?ML(>&O@[L(HB+;'
M)W^[HQ3L%>VE,YRN?81S;5/=QM B PA'GK"!4ZRSEF+P*;42.+F->?)7?!<D
MA]&1&7C**,L]7,G./W">Y6;T4%@]G@G= R#:G 5ZZ7@SI#SCV+BVFIEU%EZX
M;K;/\O++%0.&_'%(&TC#<HF&+N8FL7J,1?QB.]%G)+,HK\WL@IT,.+7A-+J>
MV<2N1NW,UP1LLN#>W] \E$)=M5K6N$:5JB6-;\>PU)<B8R01!*Q]6;<4NY[&
MB_J;VAW, O.&E76#/_D 6W8*RS'K:/&H)ZUS; F60]C)!'$B.*XHM1R]#I9J
MP6-E5C)07H,1-2I9&E[>58^1/KLMQ4_A =*P UH*6!<.E34]#A'S8$Y8D@2W
M\L"V/,5! 5,RC<&6PB?.HL*&Z2&"9XS@2(6DUC:*6_HBC%(S$]7TJS3YQL1T
M) 4DQ[3VC_'"CM'4U\OS4*#W1^O(3RGW5@^'7V9+:'*ND@*N/UEWEJJDK*HC
MI@#LSW.L>U@52C?O!Q FJ")N\:]M?C0AJM?>1$V6&M/>IP>([/H-!*_@2Q2F
MNPX1JB*#:JVZR)B[6"%&[@ ]EY< ]X=M]/JC!_Q\9? /YP7!OWR[AV=R<!.F
MJ-)J.\*6U&+P*>7?(L9FMGY>8A5-8/7_!$Z\?HN4<'@YUC06#;\L'RK!'FT2
M"[^-,EI 5<?!IK%L_U7==N/!C%\V?HY Z=KK(YH%@)K(M$EE$_;5ZBQUQ7;7
M]A"X1-7*4J08:F0)15VELQ2'WI$D74C.4BS'%FLG#=92MW4_:=:QKH9M(&HA
MROR&8;.K=F1$\ZN+S;[)L0'%%P.;W6TC MJX;BEUP\T$U>&<<E'J!&:X3*ZB
M,(D"WT/^U$LG0"\%/N\ 2','2#7$ZA5. *X?3.S5V7+B1V&;*JN'EKRQ8CIY
MT5EFW4=R6YV3;O$>;<;W6BN'EK-X<MZ^0%:(?2= [(]>9DY _ JXTZ=W7#PO
MQGE>3KOV6Q3_?A<^QI$+$KG]9O34N2!TFB509B/3@=R"&#UU+HAN1ZTUT7T=
M%CAEZ@$N1)ENJ0V&?R@0L6'(8DN!6@R@%((AJ3YSLXYWY"+6$6>I>4V8?%B0
MS@4;,2IBZ166FA0[(C58FL=DC 90UAQ G!X?X0_H!>Z;?V3^ =6/G9;A@+H,
MCOF WT]KJ"%U>F*!AISN.LK&T6;$,ST(=-2PG'LGI#W\BW]:S G&F1,N,WAX
M^.$V08[Z_2&.7G&=>V8%8W8?'70'G 3LHD!X!8P.&J;_Q8%'> CB8Y616=-G
M=- 129;%H9\BJT'HW?KOZ$_L MC4]CH*13H''^HF*(_B*MH?,JB\/4>;] VJ
M5JPU<+OI6 K4;-(X<Y$V@F]-6P@L<R=8/4PZ#7&*H^Q)F'<R:1FLK>!TTO&&
MU#DK\AI 3=?UBV?@#@' 5YBPEBU)70!EP<J&-VF'Z19?9A?=UT3AZP(Y0(^G
MEEMNU!)7XJOPY;JRI= LQF!:Q*'8%7:N]N%NK,2YPUAN#>U"6S)X6PY?1^G-
MN'%:;E/N!ACKCFMI&&H_P!BW:DNC3/OAQ;_(6QI&VA,VEM' TJ(N_1#C62FL
M+>TR$&QU6E-:X*7I=IP<:.IL, 6\OUI7RFH@JJRZPC^IO6Y-Q1=^OEA ,HPS
MN+QS6H()-898\VMM>K6^D%A'#7;%F_TAB(X X$*EM6D544 4XR*_GY8GT8[H
MVHDNY1AF)TAXT0>,'@,\BMK>?(%G46F=%M>V<:[MZT(J/X%7$&: S4*4QGK\
M+HC"[J <WX.U\\YC?GI[74^/M7F$O0).)WU[(+P"P<GKJS(N<$)6U2*!@\AV
M2S3_]"*\>T(]4BQ%2^Y$G9M78_&"J9!%M&/<4K^$/$O)P#M7T'A6%IK&9:DO
MIQ]>/"7/4G^.$B)CX*76GZ/;RG05A:\@3E%%BF<0PF4]1"E4ISS/SQ=T%VZB
M>%^8,Z>46W$-7M([[#3A91Z06FJY!U>G03 >,!IJFJYPO0M*8^THMY_L8&)=
M::[,T/5?((X>(Q\2'JJ>]8RT)U1.YQ'$+OPBF3VO,[!^@[\>\_^B*E'$=\,'
M^(#V+:.9C'FMM4_\UG'!Q3[*&+8M2G/M4[\+X;D.DO3)2<%SBDP-!?4X6S&A
MRAQ 3V2P"X"7W$*-H<(!:-+TP&!J#Z/V9PUB0=YH]]*^D"].FB'%ZAI.26@-
MM0XZ4IJB<(NP8U!.K8GF*=XZ?OPW)\AHX)+;*COK5EA+7D>/6>SNG 2<U<S\
M@Q0!*==7V6SKE%9A>L@X$?) IT?21$6Z:6>TRK206I"@&$GT*)X?;J^=HYC\
MX(UAY"*1+QVX60HUH,I</W5>,&T\951X'R7)*D03R3^?^%%36:6W,W(+SD?_
M:O.<1N[OC['O0O3\[9::/M9WU#&% M2@_Q.4/X%FIG77471[6ACWZ;H9N'V+
MM=1>+G83IH-CM\])],)],HTKO@C/"E:F29-^#9T51H(BZ]YZ+TQO$F*; Q;4
MA*P,EKJL^-9L.EU5#X<2GA_F(9PZ<E]A[+'4D]<;JKHYR?)\+ F4ZE8KRQ.N
M.N)2,94-D5]E5*J0 $22]COKLZM$(1,R(@Z25#5)#I2T4BI-ERJ "^S#C&KT
M'"1S:C( ,NRK)3#++::_0;?$<AY7G5Y'0<MT7&(WJ&IO2-!9XXJ\A)LMX69+
MN-D2;K:$FW7SO#IQ?(2:GD3(6:.+QES06S]$6>Y74<)ZYIS66D]1UY*N,447
M>6GL=$1.)[/T&NT>7W.N%88Y>\T!9O'S&G11:\C_(7 RV")GAK?71-;DT!#E
M %:*3KTPT7J2W,8[\1?_K@;_;J#1J%&KUT0XP\XIB>7O3D$[I4>W>%8[-WR<
M\9R Y6."-_,6Z"_PCVZ0>?F9>2K61EF(<'<=95$JWU]M<E$.IX6%.64YS"XZ
MEN#]/4M2'*\6Q0+;06]O!FF)4Y%^RT$UP.1FLP%N>E;/NR1\D<8PX?@2?4=7
M5$[,X"8B!AE;_@RA9QMW$1$$BB[E!E$?S:FSVHO_QGG\<A+H2$KN(4+@=.K<
MV-N,7-!03.8>5%,K5R1Q6CF)X=_.IS#\R[<UFM-J<Q=Z_JOO94[PFY_N<%DW
M.+MDYQ_6T0V]C&.7$52I&9R%7>U\4!X!3K#:;'P7D+U'O-8:]**_05Y"P3(L
MEUV]C8YW5W=0GEPZ25Y0'\K(7%*].3&*E0KAK7,5 B+B74;0D:P?."'7<]IH
MI*X.+9(P>=PC>K8F1*(4"57X.;H/E-])QY4*[2>*A&;BV&RE#,CU6[3>15GB
MA![$1,23S.FAD1(9T1*U)B/)V"<GW)(YO/GK2!/ZXH?^/MM3IU3_?4R4"#M7
M_TW?*<,@JFH++8\/)WX(DN3"A2I6@M4K_,<8L&4)OY\RZ7+Q"H?WP'W@TN5)
MJ\U2#+PUGT%41!E+U.G6@\SD9V6DJ'",30A877E!ZLJC<\0O>O&,SOT&5:M+
MU&XKR/I_GAV]KKU0QY'D:.NB09&IY':C@7G/?%I"N+,Y"GT<HT,*D>;E\=RD
MH%:LMN'_%&<%O/7[D4>K:Z+T$SIU6<:A66]CR+%)GRZM]5@JF_/.5MEJO^O:
M\C7\ &_+3VUTL2[.?F Q7M[ 1,F2,/D>(QMZ0O?Q03YE(F2T9>37_^3F'<2N
MGX#D+LSEY1J9F>_"-/;#Q'=9Q=A&^?0$(?T,&Z:G1?T&_.T.:G$7KR!VM@#_
MB*0^K]3=V+/0^$Y5Q1S%M /2V^NBDA?^_KPT]R?7Y\Y.D03705_OG+#8N8OM
M-L:19W560%I-JUJ7[MDH4Y<?HK#<WFMX 7=A/QY9B/>;DA#A;HAF\:)\?LI(
MZ&OXBHFRF >=9L@-=0I $+_ZZ-%$TIX\1,5T,?P)/B2KOR/S0)Z7^03<:!NB
MIXMY E3Y]Y1MXA/\-%0_X><Q&R,="\3848I>E43_]#7T4\;FR@U@TZ;G#'<;
MQ<4_H7:T"_;(D]  <X,.\*8_/7]E*ACL/NI,0UT/Z_)(#OE2^+1W#QF:_&J#
M1R0;FS1.9T"YT2P& Q>WCT+\JXSTX ^C)9WO-(GBP?H<3SA]R-  \=]MEF8Q
MN$N2# D^"L'+CZ.XUG8BN3\"O::D[-6YX>+5\0-D*H>P8T5)M>[&^YRRS:T<
MN7@2),%*WV2)WGIY+\<1\095Y:*U5@;UC1.'48;R$A/?@SHV(@7T;^3"SHS6
M4^(;[GF37T]KAB5]-R+F9*9DNB"NY[04IC-GB,]-";JJ8^H)78D3;L;",-_2
M%3O<(XH4!11S8S4MSVX@AGI6(ZVEPBPM!XOL 3H_<LJ/F;0<($JLY0DA7C"D
MY?"0XBAKA;,;]&5?U0Q*V&8IB1L!E):2 S$JLX2@AHZE # B0*OLT#B;+ =#
M.-KT)$W;P9^60K2\5-_(DU,2+5K76_CQF9:"RHWM+"6S]"W#ON-;/IRWY,\6
M^UI*3=UB= 4N7!W#8"V%F1D06TLU;]Y([&-*P;C;*BH"NH9]./'N'O5(8$N?
M<^HFP2G!R'/&B"_#BWAH2T%BQJ=+G6>=@J^M?2=+ 8.>S\,AJJE,0 ,=1K^2
MBFRWM QB-^IL&+PL?;9-/VE*A_!:NA-CY/U4]XV1<%!6'EK.*9)IMR8/;'N@
M4)$\T)$+8NF.C"47)#)/RD<H%_E ](36!(32ESIGJ\:J3P2R_"'54:0%)<FH
M?()U$0]<^V554BA]LG;JDF+ ;+ AX#: .$?E?,G,M/*%X44BT!VS-5F@]"WF
M119(Y><-L@<&T.K8!@9.TF'YCK9:F6!$<?%N4D&642Q]B+R[O-">P&GKEFA6
M+0225\NWY>>I8#!/SP[IL26:U@GF40E9)*FW]+-_7 A7G;&(FTA\0MTRS$<E
M;YFTYA+P3PN9L^1S/87Z!-H"697N6#G>)62SC&#09'EG9Y>7.V*;MUZCGY2;
M>%YB;ILG5"/F[(SU$O!!G4D:WTAM8X[_I05D[4W4$_Z&/XEZ?NI5R,YX$>!I
M^.BUO*8E$><PD0K##_NMY6F$UGQNEJ<1%#R-,$YY/RZ5MT1ZE_I]$E\QIO@/
M38J0&VMY/!>>'_!X@.2'WV O$&94?6?U,&<!S&KI[#Y:BG EZ6KS[ 2 7$>,
MWDY/*4H 5;W=1>A=@U<01 <$8J$Y\ I2<GOJ8%T0P.&VGT$(+Z,!G-R%M_=#
M'PE=5$BEF!][9^3&T&Y>&E)CFEON[5(F8*@R 0.3J^7[,)#JQK=)68^L@-)4
M?U.;J:+,$RQZU E!&;(<HL&/8R'"M3QC6)H.A?1<RT$;C3*5'U:69L)VIF;)
M2\X8\)EE#\_V>R<^KC9%)4T7HH)T]FE9PGMF\EYXGI_O[1DJGDUSV&].J2AR
ML:!5EB:I$WJ0VQI93$\ <2?\]ZLHQ,O+G& -XOU/+&A'GHDQIE-Q"J(OLRR:
M@&NB/$5!L(EBU'$@4NXP$7OAUHNQXN=M^L@W<LXS1:J.\LEI$]THKWG2OS<E
M\'A^-P4#3PF.]MXB47P[UIE0_=BT8<OC<X='K/B.#K!.%]_NH;AB<21]QU]B
M1Y;8$3-C1_I>7PJ%#E&YX/5EJ#=[NLS$1 E/%24B-3B4:/<*9S!MBJYKE2,0
M;O.#)M*G%'$,I'XT/C)!*LOCRE$:[/L!H'2>=83^2=X:-.P3:$HF:"(5\V1<
MJY2G#D$K-PD38>8LD$]D%#/)0'*E^WQT@(_\(WD:VW46GRK[Y^EME7IR)S*B
M2F/Y@29(:_!6OP%^BCT7>(/]/*MM4 X?=$XV;H(NH*<(YB2,_-_^,'%HQ[6C
M31,N^MU[#$H4_?JT@1V4#MO?F2!8%.U-+W'VG)0]VS"62!7^O.[PL%$"@53F
MPG<*FK$]+%A;7(S*UR&$-<DA=O.0WS93)TY-J'PP3BC)0+M'>6MFX3Y>T,5
M^U&+75@VHT?(QT ;5*HB5@NVP0(FEC32)8UTJ#32WB1J.?:3NSYT"A6Q/7=K
M&M<'E3$IENZHULO#0.$NEF[59&X/PBR];)0A-XMF])/M&S/$A4(E>]J._]1T
M0)5A;Y9GCUNB&DH&TEFZJ5,U+?<(T+-T)\U6'CD"?=D357IBA]A+I>#_FH,?
M8M;SK(-?HR^T9YQHL<NV5>(?1NR-<RPN6V+([5@@^E?I7BU"4G/ R+<_G'94
MZ3,9N6?U)K1O3\?V?"\[-"&N$XYD+79TT)=2[-C-@?F-$+^][,T$.*UO*'FQ
MR;\LFZR9 <6#T<?8LBE4TWS$N[\#J>\Z@0&E-9,XK60MP+^=,Q;@7[ZMT9Q6
MFSNXEZ^^ESG!;WZZP_%':/MW_F$=W= KT70905G5N@?TEA=P,U3;E?AP!:W5
ME))"6O=^$\J;43;D_-I<^:SM<_;R=R@VUM'YZDK:([&.2XDLQO@:P#D_PTM_
M2:G>9JGCU9I/3]&XU/%2>/012(;>;J1)GLZNU68#5>.8>- Q&IIXUO5XV%M9
MB1C&IW0^07AV?3&?XJ*WUW6UZ:%+GCP9)(5NB4*7]0<):F&V SMD:%U#\[$4
MRB5;9\G6T8T]5T]#<'8Z>^8$F/@YS%(Y;0\&'CN[TU8@B78!-4&QK M"&1_V
M@VTL/2B!,@2L[=&.$TF^F&W<50\S ?'9O?;=NHS<&%9DF.FU>@)0+_612P\W
M^AKZZ<P>A,L!N0LA#AFFMU6Z _%ZYX2%\_,A"E^Q_Y/@9%7EANDV"1.M>OU7
M.$Q=,^GO6P7NJ,\=]IR-5<"?J*H1Z8)37*^=%-PZ?CQ(,6Z54UL\4O91YK!/
M3,A^WF)HS>-\V?E9M3EY+)LVNF]\WF)HS:-[V?E9M3F%UT\CZ;=G8"/ 2)<U
MC_2E)F?5MAAVKYS8TP3SN.!TVA35KV@+'E^M*'PB76N=RG2QI.?-<.EY A,V
MWM8_B(U6B4-&_IB91RUDO1;+D;=60"3,8M<'"($:63)8&O8S!T$[M^*0<Y"P
MT@;3(38=?NTE,F7;IR1BQ<JE+0PZ/5G;M)4OQ==LD+;29GK;0P MYF""U7\I
M#F8#$\MY&^8>1#IA#F[[#P8I-6:4]CL+#I9R3RSEY8;D8KV.FZ66V=#,/ '?
MS"A4,+D<A*6,UE)&:RFCM931.@&]E-%:RF@M9;26,EI+&2UKRVA1SL.&EHB^
M!.)-%.^=T 4GQ3&AZRYR TRT<L=206NIH#6=^@A+!:VE@M9206NIH#45P)8*
M6DL%K?& 7"IH38A EPI:2P4M0Z\^/2MH=;E]6UI2"P*\]]-<'0T]])BZ'Z)N
M/JCX(N]"C OZBP$>*PE3$V-U9Y6=8ZR4&T.9<8CQ69+'0*S/2$;)QSCR,A=/
MXAG$KU!33*CN07I;=8[ S_=W^P/<G0N&&[#99ERH5G&Q>(J-F=A,@^WV/@JW
M:Q#O'[/8W4'A>Z:X*WC1W4;(^8W.J/)WCVF>[3J:AH7#TP+  VP'R?0:O((@
M.N SYWPD,9\U$.UMU(Y>'BF[P/#G=1UM#+'9LHL*BL[['I[P ;?G8A]E(>W0
MXG;3P4+1T0G2(XHH"A.:Q[O12+<FVDF!.*F8_#/<8E,35PDX.W=:Y_,0L 1:
M$9'2Z<K;-UDYL \<1=I%]98M?%Y;RH&*CO<JI)UWQSZ"Y6GN#08FR4#[0)'6
MO\2(J]1SA@#,B!01Z:.A-V\/X668,.TU%5-+G3#2="8!ZA@.@=%MHW>PQ1ZL
MG7<3;*&4^VYECLS[+;&=ADO@:1X%MUV"$&Q\VC66UEJ9N: ""]6JVFJC$[:+
M+-UA_F(882B-C9@VTQY(;:YPOS=!$9F#%#,D=*$*MUF_1>M=E"5.Z*W?(/<>
MX3_0;<7R@^B$7MC1P>JAX^G8S0:@G"EPFM<3U&GR RB#9]#J .(\;(6R'HD!
M!DEQN<IB=!3? G@T.@%/Y$EW5SWGU>;FW?43A-,J?  I=H$^@4.A.A)/%=&N
M6E4>UA%950.I1Y.E)@+F 4@$IG'X6(J+Z.%U4I$['"KVW?[%-!4V65D>@"EQ
M-%=HJ\F?EH(C):IE= -K"^MQY3<#4IM-'#PBDE?4+ UWE$:+KR*.$9BHL>3#
MC1.'4+PD$ \<?ZC?+-3_FM5<$ON22&VN(Y$4PHE]><P4^GHC'2G4X"4]EUKA
MYJQ2FRN[\/T7B*/'R(>0P&;@&;R"\!:>I0637Z'*0G'J0[2>00B9^"%*07*=
M@5*)1?^]C3)RJO$ ']!)67E=%Q2%'(78!$ZWNK'[Z#"@U.?!)#IRVSD4C>A%
M'C23.Z.A#DRA6NSY 4[<>@9N!H]E'R3P* \R>.;<0ET ;7R6'T[PC&^*>%:@
MF9JQ-8""Z&>UN?"BVL/9Q#42F^K81]=%:$'\GE$1+L@$R=>#!RD,MOSX\1?F
M&L3ZZEB4]_<LR?V+M_ H &_GF3[&4 G+0C=/^6 )!*DQ= J,J\!)DM4FSS@1
M.$M:[;7K+[>.RY8(U.9+J9$12HWT3YFI4!QSP82&VHF3P5*$ALH4ZNOB ,S-
M4JLPKZV!2@$@33>!=/ 8@[V?[4G*LGAG#? VJCSF]3U7&SQGX!53/1>%I& O
M.XH5%7;&<O.F($:5.</*M0K1^@- +@CGG>KLY?73;27G&29J.;4-2X"][A6>
M,>%DLE-\R;?4ZR!UX:]Y(,B7:WL)CVQL&[GTD6%0$ WFBF_=EC,>ZQI>0U/L
M[FLY6ITNRU48R7#/@%7IY3CH5W/[PN3E)!C]XF^M3YUIAIYJH2+#:(YF ZO"
M2[)"S (<JIPB&3J&B$LP# ^B@)(UNE@:O\&W@=$):'92AZ\ D*]^0T2T& 8-
M4PF0M@ .$@(4I4Y@!K/-MS:9":1*-S[(W8R&>'ML2EPM8#8> J))D10)R2&>
MM*K0C4&AC4_ C4+7#_S"/@7%F>^B:AI5P9_?!Q,3$F%+=3"?6*D4XED+ACAV
M'L8<OUP^Z\;I(>>4(P^AY>69INV4^ZH,M8.]CKD^+',N<]LD[0:S4U.C)4>P
M[WVGF45<$W=9<-YY6U,F+0EZO8^ZRJ0UH8L_0H^F$.FA 5XHE_(<DOLH22Y>
MH2* >'T=H<(A45A])%,$^*ZCZ5ZXR'*F_I@<-<A&1%-DZ%QR XQ__+5N4IV.
MP'O-95=B?)=Q@H*3<E!3J.6]9&G)8Z7E=+5!&L=9D:+J*OU&U<VT]8GF+_,6
MNR4DGAC=#3CGV"NAM5;&7LS[1<-XO_E:O&9.-'.1V$[AZ*9<WV@FU;-I2^8F
M)S":*0L?-YYT[ 3;'H8) 3L\Y<9O>1P,WS;0S=AI&UX]KOF\)ZIL@ZI+V#'E
M.CPSA(C7NG-Q;\X5U]JRKHKNQU5Z:]PX+:6SY7'1BO#N=+D^,9^LZ+<9R>[7
M?2H+RG"SS= J4G%[&RDLK6K43>L5MW18"EM/Y;>ST+ 43A4*\D)RP@<-B]EM
M1J_G6:+<]&AI[+!"2N7<!VT&<$C;GH@YV-)86P7$V7U[+'U;>01;-#<F7&TL
MJ15TRM>JQHC#'3WN] D$#CISG3@]KF,G3!Q<-]N =U9ZN[BH2V,'OG"[#1#W
M4/LF/\:OW5S+0[Q$G%K,)0;OO<Z@C"]^B/GYY)]Z"R%?[OS#N3CQY?$A@LP4
MII!K E38&C>AK+'[>)KWD5EGBM!0PW0?8S]T_8,38,28I?:(3<WAE.3R6/V%
M43)+8H"17DM?(]F_VMQ!M>+5]S(GH#R73FXWTB2?4"88D4*:OXXT(2@7_'VV
MITZI_ON8*%&V[_R;CIJ!V4OB>[X3'Y\=1$3<6HW4]CHF?YX"2B]<;2I\RRY?
MR.\X$F&<3BWB?$DMU&E&!W@?BK/]7>C22\*U&^D2?K_YZ0Y+8B24(1SKB!'_
MVV6$L7><(@[JOVLY_*,-2!)\+[D%U'#85C,-4[T'3H(2C)^P&^WTI"EQON2V
M.O#-LZ11YNX3/<RQV4JW(T3THD=P)A$N7I;ZAV6O;56;2(_[T8S0;)<08-]9
M9@2-V*VG]A0T 5A+ 1.U!95OV5/N7I:B0[G(E6 TKE2V@]!DEQ8ZE@(@?">L
MU8T0N(/95W&1<74[*T#M^Y6EA,,U5E&E*N]29S%@Q'M@"52+MNQCH3ZZ<ON*
M:G.0D*#:TD4GM!2V/K1%L2G8'-@CH1=7%"1+$>DEEYJF'9O#:R2HIG'6V5=E
MLHN<9JC9]A7L4WB0W0];H$Y[M- SV"(A\@0.49SB$,C)1PE=12$R8>:OE#_Y
MR>^7QV:Y\8;YF]5#QSMAS>F@R; ?#&/TF*UKWGEGN^9KO\_=-=]F 2@[=GLG
MYKQ4Q^NFR5&?/*%7F3+P %)F0!&YK1'X'T]0RDFN>K>1Z#JWQGUQ_A[%5UF2
M1GL04UWE]+;*H@V^^$'@PQ,-//O;O4,/.""V6UX]YE9Z*J+25P> *"_<%EH$
MM50;M?UH9T&%V$C/W5(:Z2"%ID+&CFVF-M<Q]9/&_1A'7N:F%162% ,MWD^9
M8'C<^/^DQ)BV?]=Q#!3DUY+KS%.,U\OJ8$@)=(O"]?# =X'_BBA+Y&'O=G,3
M](-SH,8G4=V@VD4=1V7P'NFG9"1)+91]>8VRE.!5W0/MC7J*CDZ ,WM#;Y7N
M0'S^B?$D;<\1M02B8]4U?_(PQ)(?>;E*@7 7HB<1T;&0) #^GT<OCMUE)&5;
M67ZE4!1"!C71FNJVX I8'6JO<+'N^/;YWW@Q'_6[NL7KUQ+N88;O5=3$T SX
M(-SE+?74RQH#F *EA:Y]E"5D>3B%R)"- O:APC<JU&H9T>_RUM8/9)L$2K',
MH"R+B89C?J@)9_Y]WSZ@N/;%D[RIVQKL0T+:[,,^KBKJLKU8";CV:BCQS$&6
M*D*=0L0M?$R\B\I,-W)9'G\GIN^P#6F60B1Q:#7,>?;REM2Q18Y&M! 5&8FC
MQ IK>6"GF%#J9,:U%#EQ646U&EN*C&J%NV%3&@(U,X2:M*@G&0?LBR/N14^,
M)YR'BB36^(1STRQR5AI1>#$6WI?'SR#:QLYAY[L7,7 ,")KE^.M/6WB>.+7L
M$[WM2,$%Q0Y4/T^-,*.W-<%SOX0CC^TDAS- *NA7.*L8,F4H\.(UNX\1N\"(
MJ*(T'BL8%,K(W04\.2'C48.!"(U,0+6EIO.0O=<9B*D_*F@)/%\"SP<-/)=8
MROF\EPN?Y/<;27#>9'%TH"?1U'Y6%GMU<7!<;)RAQUPUF^AT"W"5UO(.QU 8
M+?6:3"44S2"HA%1#-EA6UY@3NGF= B8(>I^EN(CKC]*^)_O";282 &@X5J:&
M )K,C>:$GQB-$C,&14"KMA0PJ<.OKKM;&D>@A-'(;B?;H!(F'O(E; AGG-D'
M'-$1Q[CM6>[D[<%B]RV/W* EH<:O69.]). ?&1SR!NJ%J:DE:RQX<X"6KK?S
MP0:](PVO+[X3K#8;WV79CYCM-;U#4B$@CCN.UMJ,B;.?'J&VUY%]_>;$WC64
MY\PI-UNI2Q=^B]:[*$N<T+L(O?4;Q.-X&V4,LN7TT+__/"<FM;G^J3/K09":
MZI]RR[3#GO:]3L=@^4@F\*#8145%"]4E1C&L2)^Z/)Z;%(4D,>?=_"/#ST(D
MJ)@THAFLE:YW3KC"ZD+R-_RB\UWX"*!"X>'HSUO'C__F!!EU/_5,1@/LEUD"
M=SU)+EPX\P1K)?B/,6 +/7X_=:61 -1RHE?GXH51%JG99E9OT'67$&R/+[&M
MSG.8H?/4VQC"2?3ITEI/2?+B_R"!EH<70GE&"^%0^@E=!,A1NNMM3-S'A(DR
MGGKH/09.B/*(V5KZ$)_2!=D+GRY?FLL@GN:G@YS)!D-\;DK055GZ"3T=GYQ]
MBJIQ8WY+2_$CJ!CZ+MQ$7,WZ:^BGR=/S5^8IS.YCQD%WL]D -_5? 3J 5YO*
M+S16D!Q$F3+90!.E>6'>6D>/6>SN( $AJT\4XE_I^F:7872$RCG)KE#+/92J
M5<&4%B7'Z*%L$PIQ)HFY0"]U->) C VSH9L?820F9-2/$^]MU)M$8O;<<S8;
MTZAJJ8M5T"+;?,F 8@.UMVX$Q79ZSL+E&#?G13[,"#ZR(=)>TN%9,6O8:#(;
M6DZ>PF;!<ZVREI7.4HBF]9J?D1S-#M^BF"@M)2<1;Q-'F;"]!!71_%LK(-34
M->S%@F-EKJ(B(,/MQ6D4'8)H !\B.M"H.#A1244E57MK$1']!%*DULE&7P86
M_K P\D#F?.N#6T69ND'A%E?@&8/NV+Z0(4)A)T5TC*N6Q;6-!G3CUBNX,7U1
M964DM6>*R>3'9'%9I]<0A:5,!H]]8)PO;_8]W3L6WW9W7Y;/ *ME97-M)TQ&
M9KI$AW@PV1#J[&9>NA_V,6E#L!F#<T5\W@7$O]C+J&,@+>.[+Q#_T["(4_/-
MBA_0?]#=X%__/U!+ P04    "  $@E]7FY08TB0^  #)^@$ #P   ')G96XM
M97@Q,%\Q+FAT;>U]^7/<1I;FSSU_!6:F/4M&%&62$F4=7D=0$MVM6;>DD.3Q
M;&QL;&0!655IH8 R#E+5?_V^*P]<)-62*%0U^H<V10*)/%^^XWO?^W%5K=.?
M_B7Z<:55 O^-?JQ,E>J?+O[[Z.3XWLF/W_,_X8'OY8D?YWFRC<IJF^K_^6]K
M52Q-]B12=97_JUEO\J)26?5THY+$9,LGT:/-QZ?_1LUN["N5_E@=F2S16?7D
M^.DBSZJCTOQ=/SDYWE1/N;VC*M_8ORW4VJ3;)^_-6I?1*WT5O<W7*K,/SO.J
MRM?P++6J4K/,GA1FN:K@JS_B^_:K<9[FQ9-_/Z;_/;U:F4H?E1L5ZR>;0A]=
M%6K#G[O2^/:3>9XF[;Y=UQU^%#_UQ%30C?CI&GIW99)J]61AJJ,8_@X#AE[]
MZ4\7'U=F;JJ(YQ??_.G'[S=??Y+HW6">8FA<%W<\44/3<O&W-[^\_M]_NWCU
M/CK_R]N+"_SI-I-S_][]^_>_^THSE.K%YVZD+"_6*OT2,_1^9<KH8KU)\^T:
M?A.=+PNMZ:>#:J6C__CWCZ?')_%3.VF?WV>:B$3'>:$JDV=/:ICQ(C69_A*C
M<;W_<OW] KWB24R>'D8PUVN5Z$B54;Z(HG=Z4^GU7!?1HUET>GQZ/YKKZDKK
M+'JK-[!7X(?G>;&1J9I%*GJA4W6E"AW%_O<[N5+/\_5&9=MQKA/,=)9$KU-S
M:6!M?LFU2=-\-T_$Q4<=UY6YU..<:9KH<J72%+9^G*]UI!<+'6.'(]C9..$+
M4Y15E*A*XYG!W[@Q<3./GY:1]A+LRE0K>DRVV"R"@<4K;@$.8%P7!3R7;N';
ME8G-!GZ?1%4.'8A>QU6.Q_%$CN-!6<N;LR@OX(4<&BZDJ46TKJL:N@XMH=Q)
MHOF6/KQ1165@'DP6716F I5E%NWBUG$K\0+&.\[]<V^ZS<-Y^>VO%V\OSM_-
MPOT/!Z)<P=NPP_F4-,\0R[K&KX(WX$SP2SJ919NZ*&LX-/@'? 'TO'49);J,
M"S.'[0]'0YML6I+&DKQZ_=LL>H_K\O/KMQ<S% KPQ]+ 0>7;6X0:RQ+XVZ7.
M8(Y+6A9E]9E2)A??K10<\(3^SN)HF>?\STN5UFJ>ZN87>#<4.M9F4[' K1<+
MD'PZB[?X>9:/AK\!,DS%'[+\*M7)$E<]E&C4']1>%CG<B%?ED]9:)^:R;[4?
MWGOX\(=PM8^;2_U[759FL;6S]F21ZH]@]\!'VRM]BKO$S;2T.\ZE;QI;B2DW
MJ=H^,1F*YR,<X:=\XKH9<E\_O??@.QC\B3N!P7+P$R?'Q]^UNO)E9NOK7D3N
M<A_5)>0%'<RS_/\UA^"D(_.^T"FP#4_'@+_^X-XC/ 8'ZG#/SL&;O#1T9: ,
M?U&C1![7@8BB]PT]@A7[4A>7=&G@3?*FT'@S97P1/5\9O4!%9:V+V,#U]QHO
M)KC2Y%*T*HRW$E8*VT6MG.^^37ZE"[XLDYKO*+2QM]&BR-=1!3TG;07_"[H,
M3(!55D17ER]X2X*[Y,=@>[2+QM_SB]>CVB!>;>_=*(F^S,&P0H_4HH9_7^7%
M!S">>/5PA<$VS(NJM/KGO"YAHDI1E18+!99B:^? EOPT*3VI*G>IJISNFZJ"
MVTYGI7)B^JU.R;_P-U6!N30R>3TI,*,\''NKP#Q3I8[>J505XW+\PBUQ[FZ.
MIMMK-N1Q5%F&]OH<AU32D*)"/(Q_?GA\/(,AM/4A_W+XEO5^@H6>:'2IB'6?
ML6LQT%.<8$&%R8 \T;NIE?0.950;PONG95,\RU61X#]>F )V1]Y1-'9R)6A4
MXYQX.3OA03&9! <BA=;#-EK"F<I8.X135^B%+@IVY8NS#$R!75N1L4I(NS"\
M+$$WO?S:J"TY'W'BP03+,K":JA6L%09=T"%95GWQ&2\5ZQ(E*C13Y-#BIE @
MAF.-SL8"C,C,P'^TE:7EI+R,6WF9[YOR<LX7_K,\JT>FQO>[73!T ]O1X)$$
MD4C^?_3#9%9UV>AB@9W(8I"S.*J(YJO_;/K67V8(\<&?&A?YFQ1:/L"3ZITS
M:K-)34Q"88-_AK]NBGQ9J'6DDGQ3==PPASMZC>+DX02,:E^T[](>/13.[E)7
M3I>E<?#N,9FI#"N@.OKA[#NG"'G)+\V"E/8O7QG>>64]_QUO:O'4]*M\@3)=
MEKHL*7P_'.,/]NL,K_8K#=^"_SHW$ P](0=IB1I"TPM$R@1U4:5EWM=/V*Q%
M?HDC87^C2E#>49^D-1!9<:'#H-V 5FXCJAP@=2JDW25VX@:.X0RA!01<"*Y6
MDSALT'\J> \NWA/ZSM]4 >?MY,Q^)E:ISA)51%L-_\=Q.G*BX1?]>>2YP&>D
M-ZSAZH\;F(Z2!<:E@3TVL!B_Y_-&S[$KA2XW>,_/36K(%8L^D"I*M2JK0.Z
M3F?89T>K@+-:EZ77"[RHH?$4<& *HR1*><VL4VMU2=*.-]0M=A(I%SP9F[K8
MY/":3,C0VN+V00?S6GW0P28AN <M.ITI-.'6>7WMAA[: &B.DM,[.)7836R&
M5A6!)6XVFO9JE,=Q793!UBE0YJ&DA9.;X))<K6 326>IN<%6)AUKW#I6O&\Z
MUCM86A16HU2R?@,!!<?F_G&4J"V<WD6E^\Y.&WR3DDG3DFP*#J(^(M,U5N4J
M0E!GPI936J\W<"^M47#\^61V_XQ\23NI&(UW.4/=Z&5+0.,]!AWG&RFOJ^@O
MB*]Y"[=83BHL7%[LIE-=!9;D]'.%M] !^BL4".D852:%0*D%N?9$]+[3E[H@
MH8\ZP2Q\8J[ATCXDK) VI$E3&[EHT&@(PQWW C1Z @_?9[CB@Y:O4NZ 0N/V
M4_XBP'2*0(=I+-+,;FOU$>;QP%\><-_5:64VZ=8J$XWW[&6'NE.T(,O= H^R
M>HU I+QH0(WD+W..]=*!LOI-SW5D%:H7@@)]+_-/Z.?.Q+G'023G]-QG?[PS
MUX>A:HL+#R//\@B#/>3UR**3!VTYT=/[Z88=]PV;[-L-^Y+M.MK4N(^CBS]J
M4VVC<[R ;J/PR3;"W=$(:ML=^N#>Z:.'TPZ]@PCZH[,?SDZ.3X_/[C^^?_;X
M^"%M6/,--NR7T!2\'3YD=XEYWE2O^(I;%H1*;FI8<,%MJ UH$TR[>$6AA)4J
M=#MV$X!_X'/PQKLJCS_LI,;UFH?\%YR0<2I<C#=7J&15A8E1N2AINFN03*('
M[^+,OWWWZXBGG28=>I&R8I-NO;LEW#([F:=BK[3&33;*53@\%!?[P#5[=]G,
M?5?G\(1\[NA/'AZ[S707.<DW#O5S=\*C?S2&]/S]R_^Z^/[D%"[L!P\>_? U
M=ND_VK=H5"MTPV;\1P?9NQ=7A?WJ1BWUT;S0ZL,1F6U/5'H%-MR=DPU\\^-Y
M>X4_'/_75_5W2JGM53'A/X]$P92;%Z]F'U3E.*J V.>@QZXU3'32Q;/OY%T]
MYB IQ>26RT(OT4_#-@5E^B*PG'+K7 9RK\KA8RY_?A!!)U*[N.[WL$M!Q]5_
M,++OP$5D>K\U\RK:M7T)];<H0!!B5'0)BO:S5,4?CM[%JSR%&5GK:I4G,-O+
MK7.3=?9H# <79JW88ARM7F\XIHJ.2+W(B\.&LZSQ>=NB4X8EEG;=?%WJDE^T
M"> ?,1>DI"AE7D19GL$W%]I4]!L\&3Z,>4@N4IQ/^ $D2YIR*"X7UZM,$:60
MSZ)28X08SXTIX#^+O"Y@@O'3"[.@GS(X@46I"J,'X:"MR'9/6 \WE\EJ6()K
MLM+AYR*OEZMV7!9G ]<-%_L6D]<-M7/,F=5]%PXO=86>:>B".)])RN!#UAD=
M"B3/ <((=F>H\5._HJ%&O?!/XL9:YP5TT_S=.H@;T>_>0=P;E2BX3:K(Y/T:
MM_=K[]U?W6S]&P0/R,M;YMR%$LG?.)_@;Q/ @N8CSJX<C(>1GYESUS--D:$>
ML(<?1@$7U>V[+=?DV;&#*''O1+ ALH+^ "MQQ!=NK^>IG$6G9]<WD=M[,/ G
MWNQ%)$?[#2T'")!K^]B,*<ZBZQ6(P^@@]/CLI+[8#5&,ZLIH0^RZW75(,SH.
ML%J$ONDY*7!G%[(]&,/.$,H.[KF;X/@)>FM/_[S2>F*5UG P-YX;'TGB7XK3
MG;OQ;30\D9&@Y/6K=*%P"[2G.U#E:)YN?=KMUM&JL(0?-)7\4KT1@B28!J,O
MM45/AG R!YYC*A>!VN$N[(+M*(7:FP_7YAW=J1I\4%YSO+Z0&HS_:.Q?U="!
MZ1303[=</+G]/'_+)R<B3Z'^.P[UZWT+]9\GO.]''1KI)"^(VZLW=<$/R#A_
M6?,.O2:#P5VAP<N8E5 &:0F@8=&M0CD,K90%#%SNFOKTR_N7X\Y+()PS)Q T
M5A"O!MOYZ& '9WV$1RT@72S"9 ;R\UDT?O<FI<2 NTS5.)>U;RG0=Y2J070S
M7A&QF[ CIYQR%@@JHDEC1DFK873%$,NK0 ;9C"CG\O>)KET2&X0(Q[!M$]+O
MG#IEJ?ANI[Y-J,-QJR*+?5-%+C[B+MP-NBH\TQGQTR>A\@''=+VIX)]F/:^+
MDFT#]&XQQAK!X20PM P53WA-^>AP%%=F'25U$7K&4=8@TU'HJF-_O A/?!BI
MLR@%&D,OM"*S(0FPR5.D=&2;!SH;:_B@IJA-%J;.(XU2B98V<GSVPM?1]&R[
M':"WY&V;4H)&+CJ6^R8Z7I,;[)G.-/Q^9P3(L%( I\J*E+D,ZEJKA=EWW<-B
MLERC(G1\,TZU<59-:3FQ70] 6*5U@B[ENB+U,,NK*#6@+I 4G$5KG8!&E,XP
MIZ*2,,2E*5&MB)F/'K-9EOCU55Y4["Q)\VQY1,(N07<?IH6RPI::!4Y&61>B
M(J+,<O.$C0ZI3P^.3PX^'-(H)E$T;E&TVC=1]%\JIE9W1@I9-8;2QTE&P#4>
M'5S*.+X'3:,D=PHF*AVR0]TF&/?I&)W3:%MB[0/A(M=)ID\\L!,5XUU2,=[?
M-RK&(,MNU.>UMXB%T_>M3R#(.+5IJ91U6/@H&!@3'KGC50I/ 1&;(J[7L/YP
MJ /J]NGV'--QW%ORQQ=:5:M=/HE\K[J#R %8/'4)CFSH<KL[T/@7J;SVY6;W
M=)?R":;D%M^Y*;EE2FX9V8Q\M>262<69*"*_H(KCO%QCU'.LCQ\M"J_%#$1P
M PW(+$ )0MJ4A#%[C$2K.=R!#DZ.5U!+NBS1ZZ#2:%%G,0=XA\/$%)O0'PUC
MO3:VO EB+N1G[QMM6#?DD8#'K"D4Q%_0;[%>YPG[)2A @STT.=$WGSP2]J8#
M=H!F6+8/?9US+IHE7234(<[5R>G1&N9Q)4TP6Q#^X8\:$6KP!=8*56&8Y ?F
MXVJER6<M 1]\6CK0!-R%,UKF\C+TXZYF]K:3V*85@OTC2?P<:R\T34:;$)LF
MAIS1:U.UV7)4%.L")(6)G;LW^'RB*V4XNA]M5MO2Q$;!3&O$,G=C5C3E^;K5
M2^'+ZYF;9:V*!!M<P91G>?CAG!SGA/]K+&5GX6"]W-K!EU;Y%3F[V<4>.+LQ
MP$>4BAQ,M)C(F91A0R1W8QYX-UFR/\M(V&/?\WZ-T[KDZ!P];\JRU@/^P#C/
M-YH8ZFG=<>*"@;?6T$]Z#VR_VVT^%O3[_G/1J3 HX\15AFF1/=)M>-;O=K0X
M!U= C]ZDT7OOYQSN--S\@I)UWX;.OLJ1R6W)00:8UG<RO/MP)?D&4!Y41<TK
M=Z4L(65?Q@(*[("WDV66.WZINI( "Y4"M>>-PBO!,'\FJ<ZDGAQMB7[16.[H
M/*:%.7G\^/XL.GT<_7KOW;WG]R+4;7YX>OKP^"3Z)M<-/XH?NZDZN89.Z3]&
M=B?:37F^!N$<*RL0W1V.L728^5GTX+0YXR>G)[LRY5.(;-P:\-X1>(;$?'!-
M=U@11R8#/DLO]IY!-SQH\6?4L0;O[=FN(8C'MVJ.TLC<0*DY";]Q"[^]XU8,
MA=]OHN2-[_Q\,:DG57@HPG\5#E<PW%7S+@A-MF'#-?A2O^5/9GN2ZY+,=M+1
M354C36OC@YZ'EYOQ*G[,_+"NB4*7=6K1"D0:J]@N#LRX=G\[C:I#?*-A/B38
MXZ35K>8\30)JU )J[S+"WG=/I-O28Y11S:PP+Z5:N.E^D42N/^?EF'D+G#".
M37QC2/&]?SI<,+A1K?*DR>V)H-R[?)57.5:>:W&UC^KL@)2Z^!CK#>>@A"J&
M*J-RHV.S,'R<0B5EQN*QZ3R]61-K:V\L6,GIVJ/D]2!1,9I09^C49??]58%Y
M:%G4.\]]Z%,[B(>PUUSA@DE&[)",V+O$E)YJ#F.3$#NFIXQ]1K^6OC(!W>\2
MZ/Y@WX#NC1SO7Q&4.M8#=/LZZSVI=$@+Y0DX7EV\CM[8C+&L<D?3X][?Z@V\
MJC'M'2PYGG@,]A&;[KD06Y)"X@_O.1'-J6R)A)7P8E85>2HD%*3N,&'0M5DN
MML#0C@G?I@0;U[;QS!7D%J"\:N@7$GN%A:P:(\!E4%6E8LQR1@\!587\@F';
MKYPPOS)SI%D=UT)\(H?5=+'=Y<5VMG\76[8@ E!$O;W,B%&&X3(OLTO\-0KT
M$FOUL5ON59[%>!=6AI^"?Y?$BE I1[3^7&!0H[L:)_-UE&=K;].QA@[7N$X%
M*8QU:0VMG7;#[\2,.T5ZK9EGPG63BFMF2^*P:8)Y75U-4,28;K;U@!C)<8[$
M.?@4TG_5,8$CD7W"T8*YPIVFC-.\K OMZW;"VVEBH[54*=<)>X;[,F$N1FV3
M2S )U++=#]A-0VM@"3#*?G@FV/J@6!HB'@RNH4)C+=62T;SP>QVKLBJ?PD-R
M/2$F=(U<94*2C\]Q-PU,.'$S4P7P B^E:OLTJ@J5:*2Q!7T5&OJ0Y5='J_SJ
M:91P3=H94_N4%)@BX-&Z3I5^&I7YHKI2!?P$XOV#KO"OI4IU<PDQKH7\'T^E
MQ -T)#749:+GM<L@'"'PJ9++P5._-SA8)#=%9"2;0Z!0;W*X@1DS_D=M++:<
MP^<>:PZK:%N7GJM80):'LKXK190H8+!YFEIX$"/\L&*%QWW#]H6U#1GH/F%]
M&].1@,60PM0G7==U9\M^JI>\P7MGU]Q_FL#EKH1[(\Y)$Z%B7.5/8$WW';EN
M&JAZO9L+'F'P:&.O++C;@HOUO;6G&N'SRF^:0J?,CK$R&\98XWN8;9Y8WBL\
M(LN<0-"#/72X#.EEHT^R*IMZ#FH=/+I6)D.X=8H=2%CPA"GQO3.5U+2#FQ".
M,\1N.*+)L'>FVGK&RBG)MWE=W-^EO,HIR==W;DKRG9)\1S8C4Y+O/AK.>Y?D
MV](-1F6]=7!S-'+2P5B)IX($J/BIZA8:+5@AJD)*T89R)P8<34(LR7U%C74I
M@K)PS;H2#6L1M4DPXS:6S!E4Y"%M$.W_BI[ R J8)'#V5B&3ZO7][U2;H"E
ML4AF9X!=:8>?B-WY@]8;T<"[@\5.D0TT[*5TI-JHSB(4F:TBM&RU1] ,:L+6
M$,6>6< ,Y2AW#)]9I!D+Y#FDP60 G1BIO45GS@M0P_'?WJ0)B&:O5Y5;9O3D
MJARUQ-V[I+(^;__8Q.YO*X/DS\S6VDE1)TFPZHC&6*M2V[3_H7?;..9F$TQ+
M+6G#BQKKBG+HW D:./\H/7K\=OC**D_9MTI"S2:>EUB"C;*:I6X3<\^VI0Y^
M!T270E\1NXR<FXKKC,(/95R8#?K(,%U=TT\%[A-T"L#/E8Y7F<&L\1EU&6ED
M#?XC]*&)GX9\:$V/VJSI,8,N)9>80,ZU3YD)>YU+T1"0JU@,*:7.K#<UW@/E
MMJSTFIU=5 %DYEQI^%-=8!6EG!R#Y 1C9EWYC> LA15T%KCWT*,'XZA0X":J
M4G;0\!#Z]%*=+(4$H.$4ZES+M!(I02Y_STV&"XWOXPCX;I9YQ<I@;I[@)V(9
M3NJ8=]>F4#$!+:^NVZ62OY[8;0)'6G.9OVV$"2ZD SB?JO/[M&@?9+<Z_V*^
M0 X(+*B N(P<_^[]C"# ,GJFKPG+15#DZ"LFKZ'C0Y]K7&#0(K0J,,(_\[Z\
M&3H(ZP56%2G8A5CB'N]B6-FC)?=E[:IB,4MRST>?VA2?1L:0*C]040S8]MI-
MG5^_[F?I.L^+#_;Z[?,^VG,HK_&7X\-.KE(M%WFAUT8<JX[3U3J5D>I$6"Q4
MQE":G/S/\J_#*+_*<-I2K;S/M<(MH[E^8VL,K:J".Q:%>1DZWM_('(WJ-G'>
MQIGC'Z$J>56$'.)99>OFQ6K#/Z(ZOMFRN,:-@Q(1HP"P79:FK(I0'6TVR$(D
M\4*D>9"<%$D:4D3T;QXQ[67\YPKURMGUI##4Y!R+2-,(6!5G64-;'_V_ @)M
M!OO@AGVVM4^1OMH,!;9,CM@)6;%U\*:ZZ= 9JBJHW(:FYW'_KTRA75QLKDHC
MHC[X()U_B5\5<!,NT&]>9[$M<T,%O[$3PVYI6C\8"5(VVZL!I@<GT616+F,3
MO3NX&^JZ62-1@6F%?X3-@ O2#\5+^.-$G"+CY^70$?\YKNW][!*MI(X.AX!P
M)GD#TZ4E&U::<GO6!]-@"V7ZBFYKNHE*?\>"7DO4\])KO&+<U1GFM=I-B,P[
MM-.A*;QND7(>JUM<BE772S+#W:-)A^9Z)YUY;QJ1SM+2-S75-CAXJBIS1*C1
M)3BOE,F&=@+N)575<D9@:S%E;WM=3%'HRQS+%%'%(E0/RI9^AHLDP1 T>&T1
M#XI-#7Q<+;64(E%@=!69WH(5<X37J53:124SVN17?&^7]9P3<-F(SJGS,[LU
M9#%Q(\IP,[76HE/"MEI@$Q>VQ %.E]U'M':FL)(G+WFKX83 IO):,8H2^"+^
M >N24Y%R\EGP5@MVVLQOLID/%X>*&OQ<<3@HW,2WV(8S>SSED'#3J;J"N<+R
M9K2+%EAM7L0=4A414I'+RY56^&']J<_M.8DZZ_@H<;I3O51$*B4.#%L*ID2%
M+\DSZH:L6%<NHD\)ET!S.([HS&S,%R0<G /8RA5KCW0<J7X$A_U[8MSN7'5U
MW14:$BJ5#EE]EVG**!+9?T\-75,P.WEAY2)F(.%9OZ%PV?6E2CL]ML%I:\,-
MM.K&;GF]W+_IGBND^(6V (C.=ZZP6 ]]A(+#^B.M1>(503"<-CW7YLZ5SGM#
M:^8,_G%56@@4L\[&Q37%ZZ3'U\E E52#^$*P!:\26N;MP?)UTL2^.#=AZV'0
M9A .$Q/%0;,WL$LN34ZV&AU6>C%N>JU]9=KV6$*/<<].-!R<AV_06/JZ5E*"
M-6E3*>DEWN>)T.TR!X%%UP#*<%]NTQG\( .H<2)O$QL0CL?V@, BENW/5 )(
M\J@AO*2XSW1'!1/);'[-SY3"_U<QZ&2-;@2VNY3E0G3W>R#41(6)G#;3U'+0
MV]*#Z\!I4T0'05D,W(D<5*U<[@25R::@SWLL3-NR=$;8CAUL+N/TAF?L+5T!
MNW.V"37C#KAJ'>.>H76U<=A'6>[H(>V^-*'<:+S2[D:A-^CMR(*;4S8E--LY
M@/"OGEY1-V;_"+2I?1=V5%&P=#C)AJ)%;5D%%SDH1F[OBG/%8=FPNVNL8I[I
MF?/I4+#$^_U\%5ZG )%]1NI+RUW264*8*M!JJ.Q[>VF@6QDT\5&8-.'[^5:E
MU?9H46"9<_:H8OV<HWHS"U1N^!M\/TU@+Z%8C['F7W3@YHD$$%ODS&]I'TE
MIXVMOQ89*N6?M@[ZNDXKLT'Z5P-BF,3=6GV KY%(0"$UB]9Y8A9(,UFBCU(C
MRRIH]L)#AJ _;GR->+U>"7TS/*LG&B:8++O.,W$V";GKO+$)0#WK[$EAU+7S
MWF_%AC&OCD7&-UDK%#8%HT8=C-H[DJ\7WM'QUKKT=16/ZC+#L'G3)^.B#QR,
M )5%P>34V'<PLS>N_*B8ED3_&QAM74\DFWT25!H.@;,NA-<4F+\9EQR]A8\<
M7^!;8@";^\F@6%>O&4=9: 2.#B6S_=.".1_L$GYN G-.8,[1;,8)S/E-P)SA
M8+^^'G=W"LP7F$:'XFCZ&D.3]'U7QR]T!==TQT2R4#<'H+#0"FY9E1[@(B&7
M3L );4\V /1EC]<I_/I-GS-K+$8,?P.SB6JP?3*?53,VTS\53 U*89JNAN'=
M<K:/XLEW;E["0.0;HUV,2J*=;=:L"4TW;@-F[TA FUGR=+1:B?)CLV6&(<W.
M08UA\L)(69Q2TQ&O5IT"'V>PG&1<8&@J2UQTL2(L<I_/(8S!8PAU.+,. VLE
M@C/8RK&%VV<>"L4U7P0*%2*J6< M\SQ!T3/K(+5)9C2&B&,(Z_7@"QN."*+?
MGQUBZ%UD%E.8Q)O%C(@'//4-A@TK>1[<.WWT<)(\=T#G\>CLA[.3X]/CL_N/
M03,_?DB"R'P#0?0E_"6?!=;'C7QR&E$-KB9&I=!+521I@$ 4I(5U!H=:P4&U
M>X1,3DYK8JK"HP]BY0U5$AN5A!X,G5@]:N:]WH0\M/_R7B5,D;[*<%D%$CI#
MU%&A$9V,_T!?;YV"S(>V"* R"^5K?H0J95VP>XI<6%>F)+#/4B'.=F.)P@B1
M0H :[LFE0U>Q8UI3T/&9Q:<>0+]PR\$V(MU-2/\.>_WGIO0.],:% R>W'U(E
M=>?*FD'%HG4WY+R-Z+?:"Y!SGWBH-%Z;!QE&7C."FCE_7$LO>"[0!JE+YJY4
M#+I>'0K8PV,C+#?W(*ZHU2ET\@<[G*GZ<P3-;%M-8&Q#.+GQ L:UG#7EA-R4
M+D1W\W Z+DCD<_L8,_.;%2!]0(Z\K(Z"D>1PVR\E\AN4*VBMUM.Q%XMR,<A1
MR95>2!_78<.-(#BBX6F7$!MK3X'5V2A0: ^AK*33"&^UCSJZ:1=X2AW#K(9,
M902*\(E9<^W1&QV],]5+^"!:EQXN;W51:%!ETF^5@,'-MK#HL51-DI(&Q )G
MG[[M0]EETND,PT+5&L-I*Z4,AMBNM84=AL%JSDA ]1.!;B+;>I:(UX#16R!N
M44$.5P5%<\((6FCBD,UN1_-'V'P*9.#?-ZH7HF5*?R,T9)YTTF.H7'@ZZ#2R
M/7JDS(:((#TT$-]JL0X6>J$+@2UV)OJP<3_='(4]>'G8&@T> ;@IHWI#4WI%
M-4)C0GJ=?N>8L4&XNB;!]H@_"+"0PM"P,58:H4,!+:9EV+'%5"@DCP2*BX5)
M#1T+@3)U;TGFCCEX^?(S;Z6>,J.$ 93].\]!W:,+D=6'O'#)&83N@W:,EBAS
M=)Y<FE(@\C'"G78[9^$-A=EQ%>S WG%.RJCD=: '2CIJSW'$5<7#S:H9+M?@
MX,(\W^N4X4Y&,9^B%/04?-WMC2?1"Y6I%>J3(.Z*=3Z+WH$RD1>F+J7J9@%'
MY6^@M1HX&=U"JM>*PX/S]ED5 9.T,9GP,*;:0%<U2).3XT,OX:DTL>1'?!G4
MJIS.9^W.(:R) 68XZ3U%=7OAN:R@6EB+:.7\S3BOLU*G'G6+N+5NJL8MW)V3
M'V+<?H@==40\9\A"] *-.-- %]]N+S;VA]V,9_?N/SJ;-N-7WXQG]QX]>'AV
M<O;XAP>/8<;/<-)A,Y[OYE[<,?VCJ_2-4O$0VP&9*\E2<-<J768^.1HADP(Z
M1:K$\LEGWTFGC^Z=_7#Z%<3 Z41UW1 #]^^=/#@].SDY/;U_>O;@_L-'?">=
M[*88^'4#JJQ6:P>$IK!4Z2@%0(W*,?$L 9-/GHQ78*ZJ"K'0F]76TQ<$CX#)
M5EFWG?TS*('?"YEFO<:041G:L6CF96@FH0^$3#%0E--M9>+2VGV+/*XI/Q9/
M <QA\ 3YZ=/:)"$S9_"EPZ?R^>F8[?@Q.]W-8X;%:%W.I*-U(.81Z-)2Z$9<
M=4B3V^,X_'@C^9"8;PM)F ^R>#C0;)TZ&"=&US\1$R,?+E%8##04U$X/K& J
M+[)AH]=4/K>[F:\Y:;4[<\X&M-IGNWG.=DRK;8>?QJ_3MB$?B!B)%@IO:**E
M:"="26(.;!>L#E521<CKX/*_YW-+D-%#.."?$_KV:#A0AMG]ER8O;E,Q9I)&
MXY9&SR=I=/>PO$:<<?22"3FH7"B0'?!3<DUSVLYV*9]A2J[QG9N2:Z;DFI'-
MR%=+KKE)%9L2;JZIV-@F;VR#Q3 =/TA1N3:D?8 4*@M)MEUS.!@I0JYT"E\X
M.#D]M)A8'^C&1C7F\-XB3GSH>/J$;N_L^#O[X@IF!G&1*LMJ6)"_8W!8E<@E
ME1+7E#(WY_"BE2&NC^HJ/]IJ55C'!3)):8=V23$0GJCMK7I];U2*T 2IWQG+
M9C"4O:.Q[,\'U9\^^%Q0?<L[\"1"/)_D\2T*C+03LJX?^BU]))2;JBKXER6H
MYC\08T%1,VUU")J+)%&)WC3HAI G3+9(:YW%3/R\%1Y<(JK2Q)D6H'8+@1_U
M3]%!R,GDQTM3$K9"Y(=,JU\YHDU;6*I2'W3V):AV#@7!8WIGU\\&CPJ_I)9V
M#CP)<]'@8'9H[>;4,J\,4VB7""!MU.9KE(!H]_)6"493'N,WS&-<[%L>XWLD
M3CS"&O!;#R_C:.0(^<4Z8$(AI2)>OF)]'=?>/*\SA\_#HUM:8D '398H+7%K
MZ4N3UU:D!"DQ3*(G4%^;9.)HF:[4=D@X-2N7""]AJZKDD%SS8M8T,1F=^0@)
MSIKIY]<6JW&\T1WNRT'O]4W7(^GNW@M^C=C&A,L<P9-2)Z7M?G>)Y"$?8Y@S
MTL7&$LV7< X+$_WU"\J)]0,==!360:\&R;T<32,A8SXX=GFF<FT48>3Q6,;:
M<"<*8  I63D_(^2PO&DL,S?_/=V;%T$)"\]XOVBMGTN[=TT[VGN]GL,-Q[W,
MD8\O.Y)*DH-E;K$1XFJV9*M#8[&*1;@RTXTXZAMQN6\WXB^@""Y]-OI;O:SA
ME"+=ZFBKWD>1F#*^,M>-4KL_F3*6(6KA;.R(=M'%$[T@(L8>YFV4':DRZY*Q
M&"RBL_R*LP--66G).FI4#ID3<6/ED!XU,;>K)0@-3C,EF6+)SAO7@US%MJP*
MY:BQX(KCNBCP<U8QP*("&^)#YQHN+2&IRB&F__9%ZV>4."ICOS/Z>-5(U'4G
MA:=<*O3.B.]7,K:H:C:E/\T$X:(NE4DI9(U<EEJW\@4HW0ZSN-AQ9FL ,5<V
M,:O8T@=,6:[P=2X\,S2O,%_K&GDE4]*O8%8-2F>J<_!%=ASQP=Y^V[4GE7^-
MN<?VN!*#^:6!\R+[<*$Q]I?.$"[$9EJ:(R%?X<^TJJM57AC+O[/U],9][?(N
M*[_V-FOF5A;:K.=D^C;;:?+O<!&3NCK*%T>;/,;BY?KC!@\I:J?4P^03./]:
MJENH;G72$;%Z 3<Y7=;COJQ7^W99O\Q^K[-XC#=R*^DMR'$SE=#.$Z@(BXE@
M^A>)=<4\ZXA75&N%"7*4W-SA+9>KDU+(PFI69!MRY?8.WZ<O!,8Z_S"_SP_6
M@E#.X"1IA[Y.[;OF!D%4[#:%&FE!=>)+BY \Y3XAH6HL1>LP?S2@;+"??N@I
MV<^+N1$$MLN)O-$^;4YTR^24;FBN["9F9^FKW<^D+$=QG2G<E,USGPT]:^59
M!S5,:$I,L/[61IU)=K1QV]A;/R$3$=++<L4JN(&,7G#F-1:EDO4)9MD10Y0K
MCFCQ6"^M.U,Q632OXE24=*?D][<(M'SE2B66;>&%<XR-W.7884X#G7W%*=*9
M^#@ZE 6LT ]7BYH;*B="V<#K=9UAYHKV:NZ0'KM$'9\*N:*"OP05=,N%!]<@
MXLM6!:: D<-16GMI8QI\TR)!8&280=XIP_"^J\</SLIGS 61%U'F.:BQUKCR
M+B:J8E1DG1">&U393J&';B2Y+BWW-I'N-]X,RZS<YKO\F3ZO,_N[R@8]R0!6
M&'/N$:=( \=;0HIVD:F(L 00V91(X8NO^-+>D\ >M<#^?=\$]@MT_"31>ZH7
M_([K!8-61X%<V-,/=TQV-VU9;25M=-,PKZ4B8V*8PF!T..68?6PN#?Z8&L45
MWQ)=A**=8LLDW,-*S%C\S@4>6A6MF@\R>88ZQ&@7U6!"& %;^PM;GA&+QS1O
MDIF_2B:@<7/K/-PE;.<$-/:=FX#&$]!X9#,RL?A_6UGNS22NW6OP M2&[)XA
M3E5F7\)T0:G?&P#(A!C0(929'1IOY4*3]\ABZ5P0 5TOH+L3MQ;8AXW /]SQ
M7)E^[F]O].IPO4NL"NNM-%?7%XL!)_P8O%_6)@R;8]XU88.IFBR9#$A A\:8
MM,_Z1ZE5.C(P\"?BWP0-_,5W_D1DT +^/D!KYN&]/3-F A<SGL07T'^D;1S5
MD4"G.<%QLJI .5:R/8'!Y$@5IB1A4Y-ADEL^?(OP:;A=1%J)D[B2<AH-Z&JK
MO9N17STDX?2>JL*G/$>*=RV1$TC<32%D8 &R24I^!RV@[</VE!!M,N$U)E0D
M&,$F,HA@)$*).G-F79VFF(Q!M<>M[T?*J\#79D0@K2LB-85?J6!?B(,=A'V]
MMKCO-8<9$BZ<(I$66WP:Z]$*BD'-2RT!5)+"31Y4R[D+S\'-8&*/PSI?Z\+$
MR, 9=.2\+'.XNIB)?<?2<L_/ST=UJ'Q "5;J65Y6N W_ILH2CD:-&X$1G12L
MHA"X#Y7[32GB O..\I3Q+V_K-%C%\_/ _^KQ'2&X@Y(#Z"4ISA/K!%W@MARR
M #[PL5*G$B1#\U\V1EZ4'KK(03I/*\S8?4M2OFU626XY3,/0ED!RE,6Z,C$H
MYC0T,)5](FDV_"<?,2OKN1P_;"[8XD% D)H1?:8UCL!7'' O8ZE&F/$C+-B*
M4B'.2P8HEIAI%7REX1/'P^>F,@#U:&*S(13)S'=\CII@%[*!GTYA?E)ZSZ,M
M6H)A"!C4F('>3UG,<<YMD^]\C0*$<DR"K8)>G;J%:Q&GO\?5JBM<2=Q$HMJ6
M=N#<?P\.1<P13A-_WZ)*^R8,!(<I+62./S#\7=9(-<&(_K-.EG2:N :5>ZS
MPC+!)/J/VNU)_B)1@NF"K LJ^8T=_KV&FRQA^G][U9$S,(AR^^T(6CF1A:&#
M3J-O/=8XF[>I[]MICT(+8$0@I,O:&#Q]%* G?R.; ]QAQH*Y.>)B8]Z@X# "
MOX#Y/2"=BZT+_;*AD3 "6.%W4[HDBVT84<9]9PHP'' 8L0ZJJTM%'(HHFS*,
M.#\-*FI;>6)CV?2XFST:$3W&I9?QC@LVM#=&!FG,/S&&,>G\=ZGS_[!O.O]S
M+GB-F_ _ RDQ*O4$114+85%8W1EL" U3!IHL4@42N+9RN0.(4F1Q]KGX&GN%
M2;H-EX\@[*%EL58H<YVNX$C$^8*+'9HZ]K./[3;DM*A-[VI*<2[@@L6Q>E3J
M.L^NM$IQ;(N6LF:OIE\STJS>5832! 6-TG.D)2MCW:_;S;3Q2>W!!)J/7X5V
M) B#,*S@^)N4%!A0#]K#]8V53\G_(]/#H5[A;T=6&&;2$Q=4?,@+4#:D,H6,
MV=RRYI%5A6#%6#'0,U(VL4GZZJQE-+4'/-#QHJ=ODQ ?L1!_M&]"_"7\L!QG
M)L;[IM<EK 9" AU,F$('.8=S75UA!8%0S/:58K"VT1H3O8O(5D/E8HB8:8RJ
M-NID7#H@2"7K^T* 82$AU&Q].LPC/LR/]^TP6]WDP?'C<7F))G#5. ^"!5>I
MW:0=.<^V0]!(D?7D/D,K/FOZ']@EQ5!#8C$>=M(');V8XD(TMH!2"#D'R8.P
MB,(C:!O%.[9 Y>\M^A5K5,$3^N+)XT</9Y0NM>;JO[M8%Q0',RIATZK_Z7BK
M-0=7]!"W@7(S+WZLH&JR(YF\>=7A,!V<'AX\HWIRSN9*F+W6E7H4<S0H6H?6
MP%QG>F%Z"U7-8?EP_#HH&1?4&@RB4^QNKZ^MT#2XJ6TF2BQ\GT@F8$O(-7"\
M 0-.LU[HZ;&K 6=S.&#K5^JCLZ)"]U5KYL()X^Q*2<J1WXN'UII]MYMWSH^7
M66[@"^&7CKR8$S]D 9I/60<>S*E)&4)( $/*01%M5!7$9@,?QLI;I?EH^8RP
M[3S31"IV;7[GP)J0:=DIF!4ZC%6%"4$O V*#1(.TQA53I1]YH_*@'3EY$R),
M#88!LQJ-S,U\=!:F**O6S$F2+;I=516OCNJ->X 29<G#NL;M)^>,MY3_,C%*
M4*DO8FX+Z.1ATHYHTBPUFR6=ZUEYKB:."U-*Y)/]%G.5AB09P<#*P-,J@^^/
M3!ET ILE0DZC,E[I! S]28$9MP(SWU$%A@[4T0>#A#HL>DHO;G!/N\QC#8M-
MK"$+ B=((C,'?/JN ;_9;7,M2D3"537C:_ZVZ2_RT)?J>-Z*'#:ZUCAS&#R$
M7^0H<D L)C IZ#]47 03^HEN0(J^<807OI!)=K@TPSG:X=!=PTZPM@D<X>*A
MLTZ4CTURRL:?7"B';V>:=4HPMY,D$'B6;4PY-+1PP0K1!WK3Q_%.:/3 WSEJ
ML: +E018ZR-,H1]^*NCPM=M$PGN6A";X\@19;Q[+'W8))3Q!UGWG)LCZ!%D?
MV8Q,D/5O*\L/)''5LBBD9J'9X^/H 99+Q&15.H!2ME!C2#J N5WVFCT$9> =
M03YLU+9YU9)NU;JXA3TQL)93\T=M$L>, QU=J6QIZ6BDS#B_/MD?X[8_XMVT
M/P:P$3T>J40C;GC>FY(?1N:L"PW)#/] NG9RH_6ZD)Q/C>V7/L\I^V^$<*O=
MTX9;)^@J.@;$P'=0N!Z_20MJW6+7RAK-ET'[/7Z$/ /[Y;IO.<=BOXOGGIN*
M]\0(U^J:12'@/%QAU]2@_PYKH@N+5N+[Z3)A>F"XR'):(]TU\:B%YMW[@EAT
MMI:X#S]F%^GD'B[3T<G!ZG 23>,63<F.BJ8&WK?2ED:I)7N(CA4AUN).<$#6
MUE8?DB[# #'G7.Q"N2A:L)Z;98V$JXJ,<A0,E&=F;OZH0,'<!]Q!A1-'O6>P
M%]:OS3"[+)=>(2;!"B2$+;#@I*]N;QSFA0K$90=!VA@;SS?'&+QP]V)'NW90
M51&0+4'$;R$S3@_FZ*@7=XI=8D)9]*ZPQ=!SB(S"98ZG;TMP+5U* DJ($N9K
M0Y7V_4PCN I#@3 HYD:\S<1Q*^370L+"),@Q*-P0"0C,\&&FCT1QK 4FLO4\
MX%U/D5]%F\X3Q$P0>$_0PV!8D[0=M[35NRMM?=+*!V+V\13HSD2Y4D4!4H,S
M&%AJ43@GRXF/P_$-=9)BO.-1<E X(\3+P+)'RB)GD8O:MH51?U2RAPBO<Z+1
MMYSD;(Q1&5(<#C*WLQ9$"M7,.E;ABWP>L8,22IS0]B,^B(+M.CG>-W#7;W +
MK/(4T2NC@EM(W,===&1LM&)-'9%P?<@JTY4E'D;<@/?42%Q9,-J)!$/PZB2F
MH-97A1O(>W)2=34=VC$?VI-].[0OH;%U1CEQ+G/C1?0?:KUY&KV.7F:@*Z.Y
M,+8#/2F9HSPF.P[7?-]#]!;0_K(T9Q\>.;4"6>Y=:<0[0S2;K9/5++ED[-%B
M5%) T%N")>G@=P*) L,V,^2"]QS/])E.09>#9LJS\_]+ I)\*O!&-B$'UY-
M-)V<7J/&*319+73Y6/GAL,5OSP:M)#H,,H(*'42CXD\^]#!G/]C*..4D%<8N
M%784 _7,4H\,X1L]G7&+/[>)[S6EXVCL!="B'TAJ,0Q^BLMFM2CB/;N(*W;6
M<4*R[T;8J(0>W!^SF<UY;)ZI65\WT8-OF7/;;/5P!O^:7^E+?K4Q=,SU=ZC'
MA8IE"G"T.CC%A'FGA0$+F!/..6L?'9G"'$/4+(;59>3#8MX!L\:4=DZ07YMR
M69/_ROK^[J$T*C1F]#O.EA:)AF77@L[:$C6V*$US!N1Y"M(BA4Q[$-? FN<W
M["6X<?02?85,W2,V1F8K'S/AO%\W)]C;/?C$=8L.J!69@5F --\1C/\[!XA_
MXU@(1J6S#F#^;0V#G,LLM6NY64][W_"B@T99(.:,Z: H#VUP<C-<KS"H*G/1
M!P2\I@O,W1+*D=W+#WGMNC_.'4.BBT0[S.S]![LRK78KC6Q280)%L\?TF'#O
M.XZ<_\'D.!Q"(9Y_Y)=G)@#B&IIQW:>X,!OWFZ A>ALC]C #1>MO\.*E]C@=
M#@+9Q'[W%,CI *),>K^<2PL:WFXPM9?*%:O"8.GA:PH__0[V %)A!A0M98<;
MR<&&?Q>>'GAD0=E(&$+3F4HE#M9W)>;>]T5P9Y0:1+)F@;V]=$B<@EQZ!II9
MM/+J@]Q@#@Z>I5(@U(HRWV45?LV22_0)+*D3$SS-*A/J)DB]OZE"'BZGQA$9
M0RM##V]F3NY#Q<*XQ"F;T7?H 1<=&]&!0H08(N@/#XH%J9=,LF5='>K;$!8U
MWG=50=';N"5",IN1$G*!E5I_:$'%%LARAW]W=P.M<,N5V<ICYS?ZE\#BV#$-
MJJ58E24>F( A$%LAE%JX[8($ ?K/@F+;UB">!97%*3L>MS+3KB*CJV5CNC[;
M#I4E*2&4#%V;3IF'DV4JJL!>U44F3!EX]*F+H+Q)T7'5TMY*JW5W]$<I[$%L
M+XM"U<F,%A!MXS76^\,R[DSI,2'CFP+^T2Z!D2=DO._<A(R?D/$CFY$)&?^-
MR=R+O"RC3"]A"$BNVP.%:Y0DC4Y.A%EK ?>M5%:G6Q*K09G% O0TUD;A"MT0
MF"N;M=Y776JL(4UF-O!]5M6$4W,*YX[1(VW#N:?[%LY]5U/],&8$;.BMHS+#
MN^19-G<?:QY)UVV 2KBO*!#G&%L[&<&->L9,91?"PRXUE8C#AW.T$8+L7OHW
M9M7#?Q(B#)S7%;$")_K2E-85D%(*CNZ0, \[>XGX0#)_<;2#@'Y"?+'KW1F1
M\$=-3[:SHA=-F&U2@[5BUKV E;XRIC94UTH?& ZS\3+$!I&IB2Y!=A#,%,VX
MPG@">O\=-Q JPD=S<.!_H:4<5:=BZP*D)?4#X7V6)8(_!]/PJ2C^29#>J2"]
MOV^"],**&@IPCTUX"I6*JU]<7)L,<)NB#$--D>#0 6MKV++5=41)$JT,:UWK
M.%7DC$R9+1V:K;.6^+:>&*(HQ>@6OAS2CUI"HA55FE:&)%P/;6T_ 0O+M[YA
M=5BR&VSY2,?-&1/LIN*(8)G?/*A9DY6'21+8?X1<NNQQH[B>[994 AA<.0=!
MN019(WP;P23>KN3%)#G'+#D?[)OD?%<7EP;VZ]ADYOLPHZD/),&'K:3N:P>G
M:!2[::+_L^3[H:HXGP:D:J3^:!(;-?-W64@'CH0+3G.P83K38S[39_MVIG]#
M$O)BC"?: 2DZV D5?\CRJU0G2\F1"Q/XFE&O.C.8.U=061!FO!^R+?.R.@K.
M\2 RIVPEC9\=:.3]FPGVLVD_2C8E?;F+G$)U(DPHZ" Y1(%K]NQ5LV?/A2Z1
M952?L4@A1>F#U?R\;B(DU!X32U**,R6H-(U-X;9&(25@@43PB!1LVI68D>5#
MH\^6.::\_H+SLVQ==,I09$R<9<TCZ!6"(3#KP@<XA_5"&1)JG.X3THZ'6;7?
M;91XN=3"A$F^OC]J_*?H88TP;E^W"M:'X<'$+;%3K'USW)-)K(]9K.]=4<17
M>86UZ,8FU\\)\DA=F]G\:?+&K:F:NT?,8) <9'<L$M<E+2,<E(1.OS%5UE0:
MEF(!B[;,2G2*1Y0]7+X>&94R(:.5U3S%</8X7V8P7.@0UITEK#T:M48'A3.H
M+X5>VN1_C.YKL/\HG !F;3HCX8VP?)A;!%<X* %\0"/&R"61SSJ..DL23;2"
M*DD*%,9=,(.K(FO'ZO@U/)K" 6-C53JHKL? 5 2S0#M<L!;H1JUPV0*U]UFN
MBF028V,68WM7Y^D<F1?PB(]-D+V_CBB"<.IYPF* P&TD7O!\0@M$#%QP!>BF
M&A6J?6T8EE=4GU^\Q@\\7RE36"DVG= =.:%[5\3G+WP]PK7SB[H:Y2DE>OUF
MI3$&<L95P"4AO/-P,(EL/1'.*_@U%YX7:A]B8Y%,-SF@F%IQJP)GWD6_9'-)
M"]>N0Y<2N$'*R5,67!:;C12C)3,D;!_&]UL/GB&1^M=A=:"%1OLPY2K)''^S
M3[G1!VP7 W1=\#:ZSTWEJ?J1K:> =:R$,IH<]5Z@-2NYN5)PYYL-C,#7%/V9
MN-Z?H^/^D^D&)_EUI_)K[^H6/4=,-NQA&.[HK*5^)8.A#KYF;E:OY^QXB(.Q
MS"+K_^!8%Y'WE;E_NVD1.3%0J0]<*035F<Q5(WA*0 9;ZM!]Q44)EUK,-D>2
M@QSCUG5'><])'I/2,QWP$1_PT[WCKCDO4<D>HPWQ2LC50E,]RULU6NC4$VZ&
M?.%N,#U1*TF:H#L9@\8<3YKA98PY"\Z9BO=X6#+4ZR7DDR6,C[558BGU*OI-
M'K#!W2I/)?3%<^?)U4#<!64_%8]CH[,591:@-ECAT@?+"JJZ"D+.9'X66A F
MGQK5317N0JI$0\-20'FQ5)GYNP K8D[]H%H\ME+O6A=+4HGR@',,-O4FMS7K
M"9H!TC:D5Q ?#,XI9J.MS ;=V_Y;GH((W3&8C();!)/4%JBCI@160'<SK +F
MJX"U2;_DU!E)5S&2,5."(NIR4[Y2!X?D^S]MXLKC7<H5F!)7?.>FQ)4I<65D
M,W(GB2N3RGVG*O?>,<\U4A5$H1J;\OV^H^M98$)3E3RP#/@)_"V6\AK\,VG6
MF[J(5PJ5:%+_BE U#)4C5+0/2?.Z1F.CW(BZQ-3E4%]K\8#ICYC\4%*N-SX"
M5G4(@\D#JJ&^NK0A"5E'[76>O08L1=HS%%7-<CL]A!Y1B?@,8(]2(M?/'O@1
MM@SMY'-$NJ%;@7J]&4+?50SJ#9(F'":%9V81+E*#Q1R)RT&B(R/"$ )D\C^,
M61CN7=[67S09N:]T#4;;Z*"SOZ&3 '%+=>D0J$@2!79CEM>9-9+7JHQKG)%H
MR<-I!$VD6"\7+ R(1Q8:,['\2X(GLU0:,.M1G&+UVBW)U)BB!$Y:?A,[D@[I
M>$W)__--]@\_BA][8BJ8EWBP?V_#9(XWB'MYF0F,A.ZY7T#$1<]2E7T8U4'X
MO[MD%.VJA3ZRHW1R/"WZY):9W#*36V8WCF?'#OF2:LZ(3(]_^^GEJ^BWE^]?
M7;Q[%_WVUXNW%Z]_EJ)54J^)RKZX.'8[",8**P5FT"CFVML$,%'S'%Z4R-:]
MH3F7B<(9>?+@^+NG7V.[G3[XXM,_S]/D2TS^VXLWO[S\R\6KZ/GKMV]>OSU_
M__+UJV\Y55]OIWY5J^_[\OOH/*M6>;:-_EJ/+/;\_V[QOQ_GQ4_/MD^BYBC@
MER^K$G[[?&7T(@C!OF:*ONE0]5,._/?%\U]1^9A.TC]TDEZGYA(3+W[)M4G3
MO/K3J(X3GHIV#W=)G=LGV^*?:*B3&36949,9-8KC^25=6U^9N7UEYJ:*SI]$
MSY%3'#K[#MW_!/1_DZIL9%.XI_OEFYC;_.AMO/@'G%*JRLCNEY/C>R?WVU#*
M\RRK51J]U<AYA(;WSQ@D/CD^^E\NLP.M[R/.B7NA8TU ]?LGL^CT^/3T\)]K
M^G?CROK<:7@XS<(T"WLU"W>IQ$WK/<W"- LWS@)H(Z?714)N_/@_J]%R&Q?@
M_HSVGVAA)V?1SDO<\3F+?OQ^GB?;G_[EQ^]7U3K]Z?\#4$L#!!0    (  2"
M7U=W#C>>8P@  *8\   /    <F=E;BUE>#,Q7S$N:'1M[5M14QLY$G[?7Z%+
M*EM096,;0RX9<U1QQ+GX:@^RQ%SM/<HS&JR+9C0K:6Q\O_Z^EL;8@$F<Q0DV
M:QZ F6FU6NK^U%]K-$=#EZGCG]C14/ $?]F1DTZ)X^YO]79KKW74")<0:%02
M1P.=3)AU$R7^]B+CYDKF$>.ETW^16:&-X[GK%#Q)9'X5L3?%=>>%5UM,FSAQ
M[>HR3T3NHF8GU;FK6_D_$;6:A>L$?76GB^FSE&=23:*^S(1E9V+,+G3&\ZG@
M0#NG,\AZK5S)JSQ2(G7H](B:3SL=#Z43=5OP6$2%$?6QX<7=OK_8'?H:R\0-
MHU2Z>@Q)F(].?G[9>MWL'#6H[?%1H_C!0S7R:GAOK+%6VD0OF_ZG\_#(QX):
M1P.MDE5,1?=Z* ?2L1 V84+6P"SV6.>T]K_6\\/^B:%<F#5QT&GWHM][WSL]
MZ??.S]CY>_;QHG=VVOMX\@OK_M8]O>SW_MW%;4AT+]C'RXM/ER=G?=8_9Q>7
MOW19J\WKK8,=OLL:U8W#I+H!5?T/7?8).BYZ_5[W$_2=?C@Y^T>7G9SVZ7'K
M;?N@QDX^L9-_=<_>==\]I4_^6UHGT\DCG9)KDW&U"K?T:JRO\PG[YQ[[4.:N
MQF)AR$#FAMQ%*T#2ZDR]BZ5$CA9[+I&V4'P2I4I<W_-;Y8"I7B]4MXX;U_$>
MJF,\F8T&W HE<W'/ES/K#E^MKV,73XC,:4AU/R_?T,47INS6;+PX;NU-?33G
MG/"\U6R^NF/(FLP50,"&?"28$2,IQB)![$O+?BTQ0&'4A%T(8A9,Y^P]NF2M
M9OU7IE.Z#<^+G)UJ P'NI,X[LR#%#%2__U"POOZ.L;J(H_RY G5_,P/U[_!T
M0H&83=CG7(^52*Y$+<2K"5&::&C*M6/4BLN<<:SN6-E-*6 ^1\! %84O9QFN
MC.2*I3S&+<-T!@;E=)"[)Y"+6%C+S81$,OY9H-\YG1;W$AB#+A4-F_H@@5B:
MN,P@EJ,Y+$F$89BR>,AL2;]F[<?"B$H)#2"35H'T@\FSL71##- 6(O8&DMX"
MIND$PQRA6<(&D_EIV.)P,W#8?F8X%"R5.2*=0#.+[!I "'$\-G//99Z2090V
M\'^LR@0Z@9ZY,*X!>9)2$,9C";>$9Z5FP*PP8>]T#4L328IK)%$J" "-&I#Q
MW5EO3\SMD*5*C^T4JD9<2>L,:FC&Z6:P&U;6YA!GI\;<LW8+NLT W<%F@JY_
M*T)_?GF]WVR][=@*5U7=0ME"IZG$Y8[=]?';8]P(CQ1$OAPH01'-!*9FH*0=
M4@L2RY L*6'2-68@5MJ6:$?]&ZT"9 JC8Y'@MF4[0$@B +D @^YU/.3YE6 G
MR% 7I8*$KUD/=T2PPA>L=!4N)97F>8 JZ6>4QN80'!!%MBS=47JKHQ0=T3CO
MXAH21':C);!:(8H $[W9:[?;KQZ(V"U\?Q1\]PX.#P[W#U^WWKYMOG[3_BO!
M>8?O;B2>WPD+AR*J/0_\.N1J1%%C7MKEFQ!7' C I^HIL$]=&BA -AM)ZW,D
MI$3N]="NQRR[SF=H(Q3W>*SHYPQ3M2I[TT.)3 M;K%8RX<X;.K RD=Q(&H ,
M)-ESAIPTE9:(JU_!K&>Y/J-J*V"00P:G1@5B0,:EXD0$,"QOQ(P HT6@T_-5
M /X;"!*$#]%>),ODYBW>-P/O@^> ]Z43X#W8+Y\ZET8_5HR13 C4W.J<$T?@
M%@L"U:R$=&Z2*>JP#D@^D$JZ"='F1=W2&N0!ZK$7EH];HG,UKZ<BU]6 BM(4
MP+[U-#^.M4F\ ;[ZO1(YV+O"$H GHJ"UA410V0>88PV2!=C %NC/!^CQ9@*]
M.^*J]-F/4"#2%!6J'"%^[8)*<\;CETCGX7)Q]>F!C89(Q3;4N -=NH=-6(9P
M\!MI005\^O6-)S:8;@WXM4J$J? [PZ1\B\WG@LUD,['Y+D3]??30-G%56?HG
MBS'Z#;F7F+2.X](02.9HZR*UF;8.#^B%-939&)I^#Z]?V,Y#;5+@'7GQCGAE
M>XP(]YO<M/^=ES>6[0:[AMS>L'S*J'Y]$(FG&GY**AHP84I^%JK:\;XC7WO\
M+"V[*&Q7@*??-3O\L^V:^7>BR72]J,TR&R7:><3.DAQ![AN(_;U2>F8>1SWM
MM+$W9-K?@,XLD\X)\24B,=#@ZR202%CHM>P V,C;EG@!_E)9/UV/Q.^EQ #\
MTE/FL=\?W]UNCVTD3I_3]MB)0J$(ETK DG9N:0\XE@(@JHCPS3;56/#/Q&Q#
MX>BYK2]Y_2O=Z3N?;X)FM:,4]LT7Y$*>H*$5-ZGP81A7E3+: (HH:&N!7UN0
M:UMFB&K,D1]-14,6OA[[[MQY>S)HNXFU)"I!DU.#9%0#1H3/H4"9/ZY0P;$6
M**;,1UJ-!/',G%]5IRY,E79%5B@]$7@Z'NJ0:/DML .<J^'A>P_!YFE/1#_:
M?U\]@KGD(4+G-_L6K!]TIKPSP(HEC+>,#I1C6"1>1USJ$M$NKT72";T<-/<0
MM)4\1J=X845DPP:@"*?0T9N9=D6;CV%MC*;2E1"DD@5XP 0V7!+4-)RYJV\8
M)LH[;8$>V%4?8"G_'/G?=;JQ>-I'Q A1457."PZEWK]KP+0*MZ8L!B4S'!BQ
M<Q#) 3#6;M78?G._/1='2SEF?V__<,6^R622*+&<;Y[PZX95?=SP)/&/V9JB
M>CH?>_ C\V_X%LW,CUM75W*\?W4P:=@&ZW^/ ^-O_J!!YV?_6:OSZR&@Z:#]
M.LW2Y5E_'3"V^4A:U8<R\Y]C;#VS3IXY'4J1LNZUB$MZF<3.PX[9UDGKY*2=
MC^%5.(H@<>.I:F]S]TNNPE\B]VM0'*WWYZ*/^?KMR4<[O$%C@:(\X*W.4X1O
MQ-683ZQ'YE&#OC(^_NFHX;]/_C]02P,$%     @ !()?5^]?-+%6"   _3H
M  \   !R9V5N+65X,S%?,BYH=&WM6U%S&CD2?M]?H4LJ6W85&#!V+@'.59R-
M=]G-VEGL5.VKF-$8732C64D#YG[]?2T-!MLXP1=G#5[\@)F95JNE[D_]M49T
M1BY51S^PSDCP&/]9QTFGQ%'OCVJSL;??J85+"-1*B<Y0QU-FW52)?[U*N;F2
M68OQPNE_R#37QO',M7,>QS*[:K%W^77[E5>;SYHX<>VJ,HM%YEKU=J(S5[7R
MOZ+5J.>N'?15G<YGSQ*>2C5M7<I46'8F)FR@4Y[-!(?:.9U"UFOE2EYE+242
MATX[U'S6Z60DG:C:G$>BE1M1G1B>W^W[B]VAKXF,W:B52%>-( GST<F/KQMO
MZ^U.C=H>=6KY7SQ4(Z]&]\8:::5-ZW7=_[4?'OE$4.O64*OX*::B=SV20^E8
M")LP(6M@%OM6YS3VO];SP_Z)H%R8-7'0<6]PV3_M'W<O^^=G[/R4?1STSX[[
M'[L?V&G_K(NO^'9^"HG>@'W\-+CXU#V[9)?G;/#I0X\UFKS:.-CANZQ6WCB,
MRQM0=?ESCUWTCC\-^I?]W@7K_7'\<_?LIQ[K'E_2X\;[YD&%=2]8][?>V4GO
MY#E]\I_".IE,O]$IF38I5T_AEGZ%_<*MSMBO>^PG;A3/X@J+A"$CF1MQUWH"
M-#V=N7?Q%,OQ<N_%TN:*3UN)$M?W?%<Z8:;7"U6MX\:UO9>J&$]J6T-NA9*9
MN.?/N76';];7N<LG1&8TI*J?ET=T\84INS4;KXX:>S,?+3@G/&_4ZV_N&+(F
M<P4@L!$?"V;$6(J)B!'[TK+?"PQ0&#5E T'L@@$HI^B2->K5WYE.Z#8\+S)V
MK T$N),Z:\^#%#-0?OY?P?KV.\;J,I[R]PK4_<T,U'_#TS$%8CIEGS,]42*^
M$I40KR9$::RA*=..42LN,\:S*2LR9PH!\SD"!JHH?#E+<64D5RSA$6X9IE.P
M**>#W#V!3$3"6FZF))+RSP+]+NBTN!?#&'2I:-C4!PE$TD1%"K$,S6%)+ S#
ME$4C9@OZF+>?""-*)32 5%H%X@\VSR;2C3! FXO(&TAZ<YBF8PQSC&8Q&TX7
MIV&+P\W 8?.%X5"P1&:(= +-/+(K "'$\=@L/)=90@91VL#W2!4Q= (]"V%<
M ?(DI2",QQ)N"<]*S8%98L+>Z1J6QI(45TBB4!  &C4@X[NSWIZ(VQ%+E)[8
M&52-N)+6&=31C-/-8#>LK"P@SLZ,N6?M%G2; ;J#S03=Y:T(_?'U]7Z]\;YM
M2UR5=0ME"YTD$I<[=M?';Y]Q(SQ2$/ERJ 1%-!.8FJ&2=D0M2"Q%LJ2$2=>8
M@4AI6Z =]6^T"I#)C8Y$C-N6[0 AL0#D @QZU]&(9U>"=9&A!H6"A*];#W=$
ML,(7K705+B65YUF *NEGE,86$!P01;:LW%%RJZ,$'=$X[^(:$D1V6RM@M404
M :;U;J_9;+YY(&*W\/VKX+MW<'APN'_XMO'^??WMN^8_"<X[?'<C\7PB+!R*
MJ/8\\.N0JQ!%C7AA5V]"7'$H )^RI\ ^=6&@ -EL+*W/D9 2F==#NQ[S[+J8
MH8U0W..QI)]S3%7*[$T/)3(M;+%:R9@[;^C0REAR(VD ,I!DSQDRTE18(JY^
M!;.>Y?J,JJV 00X9G!KEB $9%8H3$<"PO!%S HP6@4XO5@'X-A0D"!^BO8A7
MR<U;O&\&WH<O >\K)\![L%\]=:Z,?JP88QD3J&D_E!-'X!8+ M6LA'1NXAGJ
ML Y(/I1*NBG1YF7=TAKD >JQ%Y:/6Z(+-:^G(M?E@/+"Y,"^]30_BK2)O0&^
M^KT2&=B[PA* )R*GM85$4-D'F&,-DCG8P!;H+P?HT68"O3?FJO#9CU @D@05
MJAPC?NV22G/.XU=(Y^%R>?7I@8V&2,4VU+A#7;B'35B%</ ;:4$%?/+UC2<V
MG&T-^+5*A*GP.\.D?(O-EX+->#.Q>1*B_CYZ:)NXK"S]D^48?43N)2:MHZ@P
M!)(%VKI,;:JMPP-Z:0UE-H*F/\/K%[;S4)L$>$=>O"->VAXAPOTF-^U_9\6-
M9;O!KA&W-RR?,JI?'T3LJ8:?DI(&3)F2GX4J=[SOR%>^?996712V*\#S[YH=
M_MUVS?P[T7BV7E3FF8T2[2)BYTF.(/<(8G^OE)Z;QU%/.VWL#9GV-Z S3:5S
M0GR)2 PU^#H)Q!(6>BT[ #;RMB5>@/]4UL_6(_%G(3$ O_046>3WQW>WVV,;
MB=.7M#W652@4X5()6-+.+>T!1U( 1"41OMFFF@C^F9AM*!P]M_4EKW^E.WOG
M\RAHECM*8=]\22[D,1I:<9,*'X9Q62FC#:"(@K82^+4%N;9%BJC&'/G1E#1D
MZ>NQ+7=^68C<T VL+BAR8I"(*L"'\/D3"/-'%4HH5@*]E-E8J[$@CIGQJ_+$
MA2E3KDASI:<"3R<C'9(LOP5T /-I./C>0Y!9[Q/17SUA^9@3T<YOYBU9'^C<
M>'N(%4D8;PL=&H?I)%Y%[.D"$2VO1=P.71W4]Q"8I3PB4/'<BI8-&WPBG#1'
M;V;6%6TNAK6O-9,NA2 5+XEY3%+-Q4%-S9F[^D8AF+UCENB!7=4AENK/+?]9
MI1O+H3$FQH>*J710<!KU_EV#HI&[-5T341+#@2UV#J(X!(Z:C0K;K^\W%^)H
M)<?L[^T?/K%O4AG'2GQWWZS/3QB>!0&8KF43\,"4E[\O68SKI_)"N;C,KO<0
M3LR_2'SR<_U/AYV:K;%?NA?G9_X,>7?PH7MVLED._0X86JO?7MP]X;_USCIY
MYW@D1<).;[C;>=B$V3IIG9RT\S&\7:6#T#>>*K?+=K_D*OPG/KD!G/MY?X7X
M+3^J>O;1CF[0F*/6"WBK\@3AV^)JPJ?6([-3HQ^O'OW0J?F?O?X/4$L#!!0
M   (  2"7U=XPCCS6@8  )-0   /    <F=E;BUE>#,R7S$N:'1M[5QM4]LX
M$/[>7Z%KIQWHQ(Z=  4GQTP:PI5>)VE)F&D_RK:,U<J23U9(<K_^5GX)[X5"
M2D).# ,X6FEWGWV3):1VK!*V_P*U8X)#^(W:BBI&]GM?K6;#=MOUXA$(ZB5%
MVQ?A#&5JQLB?+Q,L3RGW$!XK\0=-4B$5YJJ5XC"D_-1#N^FT]3(?-JVZ*#)5
M%N4AX<IS6I'@RLKHO\1SG52UBO$L)=*J+<()93-O1!.2H3Z9H&.18%X1^D(I
MD0!M/BIF])1[C$0*F+9U]XKI)*:*6%F* ^*EDE@3B=.KO'_*#GA-:*AB+Z+*
M"H 2Q <F;UZY.TZK7==]]]OU](E5E?0TOJ9K()B0WBLG_VK=KOF$Z-Z>+UBX
M""AZTYCZ5"'M-F\K1%9 +O18Z[B-NSC?;J  !B=R12S4[1V/C@Z/NIW1T:"/
M/I\<#T\Z_1$:#=;)6@^.I94RE;N+3NRAW;71L-?-S>4VMYV:,=2J&:HS1)V#
MP>=1[\ $U"K;J0JC/6<'#0[1Z$,/#3O'[SO]WM :?/W4^X8ZW9%N:3A.8YW,
M]YCJ]7V<*1K-'FE"+F2"V2+ ..(('C@)%!4<3:B*D8H)^C+&$CR-S= QT3-0
M)"+]%ZA ..H*"9_AO,>&IG[S:MIPW*#5%4F*^:QX#%N;" @.053D.M87% F9
MCYT2246("-?S630DJ2*)3R1J.C5PE483X0Q%E)'P7)PA"<:2*@HJ81ZBWC2(
M,3\E($F2T"S3@L"WI@RQ(B@FDH# EV0K])B+5LNIQV!LF8%=@)F((AK DU95
MMY7*Y(/Y,P1-VG UE(YE-H89.5("7:@I)8)Y3=$:X%" 8N$E\HI(1TS)98BE
MCSG)K,&4D1GJ!#G4.F)JND<R0S^XF  8IT2+C)6W@$A:G/M<C:60GEU^C['T
MJX/7M)O-YNO6Y0 +:98R//,B1J87PVL'9"G#I.*4TUB9 J=LY7%D@89)YODX
M(XQR<BWBSN6]R'H50_!F3"C7:EDY-+_ XB>P741D:^O=GKOG;FV[SDYS[]UK
M@&+#W:Q,><&&10?7<5Y?D6Q%P'NY/X(8*E-4-&:0KP((6Z83Q3QY2/+/F$J2
M0(<\N,]#=0-#BI+(W=X(-^<!>9YJYFFFC$IWK[G5RA/0W.L!J_*G\?[G[/V-
MY^O]E$=ZO-RE=0NFNIK1HAQ6H8&IKN4@3::CH*:;,6,(ND$QQ@QB)$LA++*B
M+$:48Q[HSV' D.9#:[<'JC$K@DA %<]Y7JV7]FW!L=S5JD>;Z,XYWSTKI,(^
M(Y54OI P <D%T6M[H(5NM<#3Q!C\ETY)V)I[H0U^6'8 ;1A.,^)E),5@!U*L
M",+HLAKZC&;4IXRJF5=1ET1 %5YV\:V&O=70<="NJ_ 6FCW;O8-BQW9V[B"Y
MS@C^D%=%CPL;Y/YP@\@ @>5+@G]X^4]+?W"S1<_TG"W K/0+<"K-^ID[XD-S
MQ0&XB8<&@1+Y9-LM)ML7O/-FNST8[0*0Y0/^9.O4:XK?TASV_<S[[>C>H/LM
M:)?[+Q5L;J74 @Q0)O7JV7ZWG0+Z@M%PX6L_B[-._7>\A^X^="EJI5Z*ZVBT
M2N ,^M]6"IXB<7ZTT8=50NFD/[HIVYCYR3*6DM:TE)JIB/'-1T]$UGU;:23X
M#.GJ,.;*9.3U]OJE8VLRLO%-DY'O^B>GF)((]:8D&"MZ1M"@V"DUR7F] V#I
MV)KD;'S3).<[L-[X+"D/:(H9(O,,7?XOR^:OINB&W=A><)9.:!@R<C\#+3&7
MK&@J,>@9] QZ3XN>F<.:+6DSL5UE_,R6]%-O29L=Z6>^(_VQ,QSTT=\V^JMS
M_*G3/S"%;[U?D)>.K:EQQC?-XLT=6'_$F>!Y5L:281Z:K+S>GK]T;$U6-KYI
MLO*]]CL/YX=@S'[G_R( EHZM2<[&-TUROO]^Y_DQQ?OL=\)O?;C.7/GP%HUB
MFI47&H"KY<<[LUB?!^5"(9^@D)"$A/.K$_++&*J;$_)K'-*Q3$5&+A^GWKWG
M$>J:/G,M@%!.:$90-O:_PQ#ZM@/=F5%<'%LL1L. 5\&@!M+)4DYZ44SHZ.MC
ML$%Y+05\Y,^0)!&1A >Z!2CT30Z@A[YQ(K_TX:J@Y_(UD;C6>I,:]DJM\"WO
M3IKG=S?<8X)YZ=K&\WEFBD])450L'$&"]C";X%F6SSG;=7VEX/Z+=CV_C/ _
M4$L! A0#%     @ !()?5PKR>W4*?0( N=,S !$              ( !
M ')G96XM,C R,S Y,S N:'1M4$L! A0#%     @ !()?5P=(G6>T%@  *P0!
M !$              ( !.7T" ')G96XM,C R,S Y,S N>'-D4$L! A0#%
M  @ !()?5Z]W/]Y4$   SN(  !4              ( !')0" ')G96XM,C R
M,S Y,S!?8V%L+GAM;%!+ 0(4 Q0    (  2"7U<1>XNJ[$L  #O6!0 5
M          "  :.D @!R9V5N+3(P,C,P.3,P7V1E9BYX;6Q02P$"% ,4
M"  $@E]7;A!K+HS!   >,0D %0              @ '"\ ( <F=E;BTR,#(S
M,#DS,%]L86(N>&UL4$L! A0#%     @ !()?5P0\H-3H7   [7H' !4
M         ( !@;(# ')G96XM,C R,S Y,S!?<')E+GAM;%!+ 0(4 Q0    (
M  2"7U>;E!C2)#X  ,GZ 0 /              "  9P/! !R9V5N+65X,3!?
M,2YH=&U02P$"% ,4    "  $@E]7=PXWGF,(  "F/   #P
M@ 'M300 <F=E;BUE>#,Q7S$N:'1M4$L! A0#%     @ !()?5^]?-+%6"
M_3H   \              ( !?58$ ')G96XM97@S,5\R+FAT;5!+ 0(4 Q0
M   (  2"7U=XPCCS6@8  )-0   /              "  0!?! !R9V5N+65X
>,S)?,2YH=&U02P4&      H "@!^ @  AV4$

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